| open class M() { | |
| open var b: Int = 0 | |
| } | |
| class N() : M() { | |
| val a : Int | |
| get() { | |
| super.b = super.b + 1 | |
| return super.b + 1 | |
| } | |
| override var b: Int = a + 1 | |
| val superb : Int | |
| get() = super.b | |
| } | |
| fun box(): String { | |
| val n = N() | |
| n.a | |
| n.b | |
| n.superb | |
| if (n.b == 3 && n.a == 4 && n.superb == 3) return "OK"; | |
| return "fail"; | |
| } |