fun interface KRunnable { abstract fun run() } fun foo0() { } fun foo1(vararg xs: Int): Int { return 1 } fun use(r: KRunnable) { } fun testSamConstructor(): KRunnable { return ::foo0 /*-> KRunnable */ } fun testSamCosntructorOnAdapted(): KRunnable { return local fun foo1() { foo1() } /*-> KRunnable */ } fun testSamConversion() { use(r = ::foo0 /*-> KRunnable */) } fun testSamConversionOnAdapted() { use(r = local fun foo1() { foo1() } /*-> KRunnable */) }