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.
13 lines
253 B
Kotlin
Vendored
13 lines
253 B
Kotlin
Vendored
interface A {
|
|
// There must be no delegation methods for 'log' and 'bar' in C as they are private
|
|
private val log: String get() = "O"
|
|
private fun bar() = "K"
|
|
|
|
fun foo() = log + bar()
|
|
}
|
|
|
|
interface B : A
|
|
class C : B
|
|
|
|
fun box() = C().foo()
|