mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-16 08:31:35 +00:00
23 lines
510 B
Kotlin
Vendored
23 lines
510 B
Kotlin
Vendored
// IGNORE_BACKEND: JVM_IR
|
|
// TARGET_BACKEND: JVM
|
|
|
|
// WITH_RUNTIME
|
|
|
|
class A {
|
|
fun f(): () -> String {
|
|
val s = "OK"
|
|
return { -> s }
|
|
}
|
|
}
|
|
|
|
fun box(): String {
|
|
val lambdaClass = A().f().javaClass
|
|
val fields = lambdaClass.getDeclaredFields().toList()
|
|
if (fields.size != 1) return "Fail: lambda should only capture 's': $fields"
|
|
|
|
val fieldName = fields[0].getName()
|
|
if (fieldName != "\$s") return "Fail: captured variable should be named '\$s': $fields"
|
|
|
|
return "OK"
|
|
}
|