mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-10 15:53:46 +00:00
38 lines
620 B
Kotlin
Vendored
38 lines
620 B
Kotlin
Vendored
// IGNORE_BACKEND_FIR: JVM_IR
|
|
// WITH_RUNTIME
|
|
// MODULE: lib
|
|
// FILE: common.kt
|
|
|
|
class C<T>(var t: T)
|
|
class G<T>(var t: T)
|
|
|
|
var <T> C<T>.live: T
|
|
get() {
|
|
return t
|
|
}
|
|
set(value) {
|
|
t = value
|
|
}
|
|
|
|
var <T> G<T>.live: T
|
|
get() {
|
|
return t
|
|
}
|
|
set(value) {
|
|
t = value
|
|
}
|
|
|
|
// MODULE: main(lib)
|
|
// FILE: main.kt
|
|
import kotlin.reflect.KMutableProperty0
|
|
|
|
fun qux(text: KMutableProperty0<String>, s: String): String {
|
|
text.set(s)
|
|
return text.get()
|
|
}
|
|
|
|
fun box(): String {
|
|
val c = C("FAIL_C")
|
|
val g = G("FAIL_G")
|
|
return qux(c::live, "O") + qux(g::live, "K")
|
|
} |