mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-08 15:53:19 +00:00
Parse TryCatchBlockNode's in generated bytecode, infer stack save/restore points. Save stack to local variables before 'try'. Restore stack after the beginning of try-block, catch-block, and default handler. Integrate before/after inline markers rewriting (otherwise it'll break our stacks). #KT-3309 Fixed
26 lines
376 B
Kotlin
Vendored
26 lines
376 B
Kotlin
Vendored
inline fun test(s: () -> Int): Int =
|
|
try {
|
|
val i = s()
|
|
i + 10
|
|
}
|
|
finally {
|
|
0
|
|
}
|
|
|
|
fun box() : String {
|
|
test {
|
|
try {
|
|
val p = 1
|
|
return "OK"
|
|
}
|
|
catch(e: Exception) {
|
|
-2
|
|
}
|
|
finally {
|
|
-3
|
|
}
|
|
}
|
|
|
|
return "Failed"
|
|
}
|