Files
kotlin-fork/compiler/testData/codegen/boxInline/anonymousObject/kt13133.kt
T
2022-07-14 23:24:18 +02:00

36 lines
673 B
Kotlin
Vendored

// TARGET_BACKEND: JVM
// WITH_REFLECT
// FILE: 1.kt
package test
inline fun inf(crossinline cif: Any.() -> String): () -> String {
// Approximate the types manually to avoid running into KT-30696
val factory: () -> () -> String = {
object : () -> String {
override fun invoke() = cif()
}
}
return factory()
}
// FILE: 2.kt
import test.*
fun box(): String {
val simpleName = inf {
javaClass.simpleName
}()
if (simpleName != "" ) return "fail 1: $simpleName"
val name = inf {
javaClass.name
}()
if (name != "_2Kt\$box$\$inlined\$inf$2$1" ) return "fail 2: $name"
return "OK"
}