// ISSUE: KT-58259 interface Box { val value: T } interface Res { operator fun invoke() {} } val Box.foo: X get() = TODO() fun foo(p: Box) { p.value.invoke() // OK p.value() // OK p.foo.invoke() // OK // Error in K1, OK in K2 p.foo() }