interface I class C private inline fun C.f() = object : I { val unused = T::class } fun box(): String { val t1 = C().f() val t2 = C().f() arrayOf(t1, t2) return "OK" }