Files
kotlin-fork/compiler/testData/codegen/box/closures/kt11634_4.kt
T
2018-06-28 12:26:41 +02:00

29 lines
554 B
Kotlin
Vendored

// IGNORE_BACKEND: JVM_IR
interface A {
fun foo(): String
}
open class Base (val p: String) {
open val a = object : A {
override fun foo(): String {
return p
}
}
}
open class Derived1 (p: String): Base(p) {
override open val a = object : A {
override fun foo(): String {
return "fail"
}
}
inner class Derived2(p: String) : Base(p) {
val x = object : A by super<Base>@Derived1.a {}
}
}
fun box(): String {
return Derived1("OK").Derived2("fail").x.foo()
}