51 lines
885 B
Kotlin
Vendored
51 lines
885 B
Kotlin
Vendored
// EXPECTED_REACHABLE_NODES: 1303
|
|
|
|
open class A {
|
|
open val x: Int
|
|
@JsName("getX_") get() = 23
|
|
|
|
open var y: Int = 0
|
|
@JsName("getY_") get() = field + 10
|
|
@JsName("setY_") set(value) {
|
|
field = value
|
|
}
|
|
}
|
|
|
|
interface C {
|
|
@get:JsName("getZ_") val z: Int
|
|
}
|
|
|
|
class B : A(), C {
|
|
override val x: Int
|
|
get() = 42
|
|
|
|
override var y: Int
|
|
get() = super.y + 5
|
|
set(value) {
|
|
super.y = value + 2
|
|
}
|
|
|
|
override val z = 55
|
|
}
|
|
|
|
fun getPackage() = js("main")
|
|
|
|
fun box(): String {
|
|
val a = B()
|
|
|
|
assertEquals(42, a.x)
|
|
assertEquals(15, a.y)
|
|
a.y = 13
|
|
assertEquals(30, a.y)
|
|
assertEquals(55, a.z)
|
|
|
|
val d: dynamic = B()
|
|
|
|
assertEquals(42, d.getX_())
|
|
assertEquals(15, d.getY_())
|
|
d.setY_(13)
|
|
assertEquals(30, d.getY_())
|
|
assertEquals(55, d.getZ_())
|
|
|
|
return "OK"
|
|
} |