| // FILE: 1.kt | |
| package test | |
| class W(val value: Any) | |
| inline fun W.safe(crossinline body : Any.() -> Unit) { | |
| { | |
| this.value?.body() | |
| }.let { it() } | |
| } | |
| // FILE: 2.kt | |
| import test.* | |
| fun box(): String { | |
| var result = "fail" | |
| W("OK").safe { | |
| result = this as String | |
| } | |
| return result | |
| } |