// FIR_IDENTICAL // !CHECK_TYPE class A { val x get() = 1 val y get() = id(1) val y2 get() = id(id(2)) val z get() = l("") val z2 get() = l(id(l(""))) val T.u get() = id(this) } fun id(x: E) = x fun l(x: E): List = null!! fun foo(a: A) { a.x checkType { _() } a.y checkType { _() } a.y2 checkType { _() } a.z checkType { _>() } a.z2 checkType { _>>() } with(a) { 1.u checkType { _() } } }