cd9209a7ee
Most of these tests check the specific structure of lambdas when they are generated as classes, and they start to fail once invokedynamic lambdas are enabled by default.
26 lines
807 B
Kotlin
Vendored
26 lines
807 B
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// LAMBDAS: CLASS
|
|
|
|
// has declaring class on Android 4.4
|
|
// IGNORE_BACKEND: ANDROID
|
|
|
|
// WITH_REFLECT
|
|
|
|
val l: Any = {}
|
|
|
|
fun box(): String {
|
|
val enclosingClass = l.javaClass.getEnclosingClass()!!.getName()
|
|
if (enclosingClass != "LambdaInPackageKt") return "enclosing class: $enclosingClass"
|
|
|
|
val enclosingConstructor = l.javaClass.getEnclosingConstructor()
|
|
if (enclosingConstructor != null) return "enclosing constructor found: $enclosingConstructor"
|
|
|
|
val enclosingMethod = l.javaClass.getEnclosingMethod()
|
|
if (enclosingMethod != null) return "enclosing method found: $enclosingMethod"
|
|
|
|
val declaringClass = l.javaClass.getDeclaringClass()
|
|
if (declaringClass != null) return "anonymous function has a declaring class: $declaringClass"
|
|
|
|
return "OK"
|
|
}
|