Files
kotlin-fork/compiler/testData/codegen/box/functions/invoke/kt3297.kt
T
Juan Chen 7249d2f889 [FIR] Fix translation of invokes & add return expressions for lambdas
* fixed NoSuchMethod caused by mismatched signatures of the "invoke" method generated for lambda arguments
* added test cases in invoke.kt for KFunction and anonymous functions
* added a transformer to wrap the last expression in the bodies of lambdas with return
2020-02-06 12:44:14 +03:00

17 lines
331 B
Kotlin
Vendored

//KT-3297 Calling the wrong function inside an extension method to the Function0 class
infix fun <R> Function0<R>.or(alt: () -> R): R {
try {
return this()
} catch (e: Exception) {
return alt()
}
}
fun box(): String {
return {
throw RuntimeException("fail")
} or {
"OK"
}
}