Files
kotlin-fork/backend.native/tests/external/codegen/box/enum/enumEntryReferenceFromInnerClassConstructor1.kt
T
2017-11-16 17:21:48 +03:00

24 lines
413 B
Kotlin

interface IFoo {
fun foo(): String
}
interface IBar {
fun bar(): String
}
abstract class Base(val x: IFoo)
enum class Test : IFoo, IBar {
FOO {
// FOO referenced from inner class constructor with uninitialized 'this'
inner class Inner : Base(FOO)
val z = Inner()
override fun foo() = "OK"
override fun bar() = z.x.foo()
}
}
fun box() = Test.FOO.bar()