1c3b895fc0
Current implementation of calls with super qualifier relies on invokespecial, which has some more constraints than regular virtual invocations. When those constraints aren't met, accessors are needed.
20 lines
233 B
Kotlin
Vendored
20 lines
233 B
Kotlin
Vendored
open class A {
|
|
open fun foo2(): String = "OK"
|
|
}
|
|
|
|
open class B : A() {
|
|
|
|
}
|
|
|
|
class C : B() {
|
|
inner class D {
|
|
val foo: String = super<B>@C.foo2()
|
|
}
|
|
}
|
|
|
|
fun box() : String {
|
|
val obj = C().D();
|
|
return obj.foo
|
|
}
|
|
|