blob: b911c97062a735099d9a8f657d66a193fe7bd6b4 [file]
// TARGET_BACKEND: JVM
// WITH_REFLECT
// IGNORE_INLINER_K2: IR
// 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"
}