KT-5863: Inlined try/catch/finally block with non-local return doesn't work properly
#KT-5863 Fixed
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
inline fun test2Inline() = performWithFinally { "OK" }
|
||||
|
||||
fun box(): String {
|
||||
return test2Inline()
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
inline fun <R> performWithFinally(finally: () -> R) : R {
|
||||
try {
|
||||
throw RuntimeException("1")
|
||||
} catch (e: RuntimeException) {
|
||||
throw RuntimeException("2")
|
||||
} finally {
|
||||
return finally()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user