Files
kotlin-fork/compiler/testData/codegen/boxInline/anonymousObject/anonymousObjectInDefault.kt
T
2020-03-28 15:26:19 +03:00

31 lines
462 B
Kotlin
Vendored

// IGNORE_BACKEND: JVM
// IGNORE_BACKEND_MULTI_MODULE: JVM, JVM_IR
// FILE: 1.kt
package test
inline fun <T> myRun(block: () -> T) = block()
// FILE: 2.kt
import test.*
interface IFoo {
fun foo(): String
}
class A(val x: String, f: () -> IFoo = {
val y = "K"
myRun {
val o = object: IFoo {
override fun foo() = x + y
}
o
}
}) {
val foo: IFoo = f()
}
fun box(): String {
return A("O").foo.foo()
}