| // FILE: 1.kt | |
| package test | |
| import kotlin.reflect.KProperty | |
| class Delegate { | |
| operator fun getValue(t: Any?, p: KProperty<*>): String = "O" | |
| } | |
| inline fun test(crossinline s: () -> String): String { | |
| val delegate = Delegate() | |
| val o = object { | |
| fun run(): String { | |
| val prop: String by delegate | |
| return prop + s() | |
| } | |
| } | |
| return o.run() | |
| } | |
| // FILE: 2.kt | |
| import test.* | |
| fun box(): String { | |
| return test { "K" } | |
| } |