trait Callable { fun call(): T } fun foo(a: Int): Int { // SIBLING: val o = object: Callable { val b: Int = 1 override fun call(): Int { return a + b } } return o.call() }