Files
kotlin-fork/backend.native/tests/external/codegen/box/closures/kt11634.kt
T
2017-03-13 15:31:46 +03:00

27 lines
436 B
Kotlin

interface A {
fun foo(): String
}
class AImpl(val z: String) : A {
override fun foo(): String = z
}
open class AFabric {
open fun createA(): A = AImpl("OK")
}
class AWrapperFabric : AFabric() {
override fun createA(): A {
return AImpl("fail")
}
fun createMyA(): A {
return object : A by super.createA() {
}
}
}
fun box(): String {
return AWrapperFabric().createMyA().foo()
}