33 lines
623 B
Kotlin
Vendored
33 lines
623 B
Kotlin
Vendored
// EXPECTED_REACHABLE_NODES: 1297
|
|
package foo
|
|
|
|
open class A(var msg:String) {
|
|
open var prop:String = "initA"
|
|
}
|
|
|
|
class B:A("FromB") {
|
|
override var prop:String = "initB"
|
|
}
|
|
|
|
fun box(): String {
|
|
var refAProp = A::prop
|
|
var refBProp = B::prop
|
|
|
|
assertEquals("prop", refAProp.name)
|
|
assertEquals("prop", refBProp.name)
|
|
|
|
val a = A("Test")
|
|
assertEquals("initA", refAProp.get(a))
|
|
|
|
refAProp.set(a, "newPropA")
|
|
assertEquals("newPropA", a.prop)
|
|
|
|
val a1 = B()
|
|
assertEquals("initB", refAProp.get(a1))
|
|
|
|
refAProp.set(a1, "newPropB")
|
|
assertEquals("newPropB", a1.prop)
|
|
|
|
return "OK"
|
|
}
|