// !LANGUAGE: +PolymorphicSignature // TARGET_BACKEND: JVM // IGNORE_BACKEND_FIR: JVM_IR // FULL_JDK // SKIP_JDK6 // WITH_RUNTIME import java.lang.invoke.MethodHandles import java.lang.invoke.MethodType var result: String? = "Fail" class C { fun foo(s: Nothing?) { result = s } } fun box(): String { val mh = MethodHandles.lookup().findVirtual( C::class.java, "foo", MethodType.methodType(Void.TYPE, Void::class.java) ) mh.invokeExact(C(), null) return result ?: "OK" }