// WITH_REFLECT // TARGET_BACKEND: JVM // FILE: 1.kt package test interface Call { fun call(): T } public inline fun Any.inlineMeIfYouCan() : () -> Call = { object : Call { override fun call() = T::class.java.newInstance() } } // FILE: 2.kt import test.* public class A() fun box(): String { val s = "yo".inlineMeIfYouCan()().call() if (s !is A) return "fail" return "OK" }