158 lines
2.8 KiB
Kotlin
Vendored
158 lines
2.8 KiB
Kotlin
Vendored
// IGNORE_BACKEND_K2_LIGHT_TREE: JVM_IR
|
|
// Reason: KT-56755
|
|
// FILE: test.kt
|
|
|
|
fun foo() {
|
|
try {
|
|
mightThrow()
|
|
} catch (e: Throwable) {
|
|
return
|
|
}
|
|
|
|
val t = try {
|
|
mightThrow2()
|
|
} catch (e: Throwable) {
|
|
return
|
|
}
|
|
|
|
val x = try {
|
|
mightThrow3()
|
|
} catch (e: Throwable) {
|
|
return
|
|
}
|
|
}
|
|
|
|
var throw1 = false
|
|
var throw2 = false
|
|
var throw3 = false
|
|
|
|
fun mightThrow() {
|
|
if (throw1) throw Exception()
|
|
}
|
|
|
|
fun mightThrow2() {
|
|
if (throw2) throw Exception()
|
|
}
|
|
|
|
fun mightThrow3(): Int {
|
|
if (throw3) throw Exception()
|
|
return 42
|
|
}
|
|
|
|
fun box() {
|
|
foo()
|
|
throw3 = true
|
|
foo()
|
|
throw2 = true
|
|
foo()
|
|
throw1 = true
|
|
foo()
|
|
}
|
|
|
|
// EXPECTATIONS JVM JVM_IR
|
|
// test.kt:43 box
|
|
// test.kt:6 foo
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:31 mightThrow
|
|
// test.kt:7 foo
|
|
// test.kt:12 foo
|
|
// test.kt:13 foo
|
|
// test.kt:34 mightThrow2
|
|
// test.kt:35 mightThrow2
|
|
// test.kt:13 foo
|
|
// test.kt:12 foo
|
|
// test.kt:18 foo
|
|
// test.kt:19 foo
|
|
// test.kt:38 mightThrow3
|
|
// test.kt:39 mightThrow3
|
|
// test.kt:19 foo
|
|
// test.kt:18 foo
|
|
// test.kt:23 foo
|
|
// test.kt:44 box
|
|
// test.kt:45 box
|
|
// test.kt:6 foo
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:31 mightThrow
|
|
// test.kt:7 foo
|
|
// test.kt:12 foo
|
|
// test.kt:13 foo
|
|
// test.kt:34 mightThrow2
|
|
// test.kt:35 mightThrow2
|
|
// test.kt:13 foo
|
|
// test.kt:12 foo
|
|
// test.kt:18 foo
|
|
// test.kt:19 foo
|
|
// test.kt:38 mightThrow3
|
|
// test.kt:20 foo
|
|
// test.kt:21 foo
|
|
// test.kt:46 box
|
|
// test.kt:47 box
|
|
// test.kt:6 foo
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:31 mightThrow
|
|
// test.kt:7 foo
|
|
// test.kt:12 foo
|
|
// test.kt:13 foo
|
|
// test.kt:34 mightThrow2
|
|
// test.kt:14 foo
|
|
// test.kt:15 foo
|
|
// test.kt:48 box
|
|
// test.kt:49 box
|
|
// test.kt:6 foo
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:8 foo
|
|
// test.kt:9 foo
|
|
// test.kt:50 box
|
|
|
|
// EXPECTATIONS JS_IR
|
|
// test.kt:43 box
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:31 mightThrow
|
|
// test.kt:13 foo
|
|
// test.kt:34 mightThrow2
|
|
// test.kt:35 mightThrow2
|
|
// test.kt:12 foo
|
|
// test.kt:19 foo
|
|
// test.kt:38 mightThrow3
|
|
// test.kt:39 mightThrow3
|
|
// test.kt:18 foo
|
|
// test.kt:23 foo
|
|
// test.kt:44 box
|
|
// test.kt:45 box
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:31 mightThrow
|
|
// test.kt:13 foo
|
|
// test.kt:34 mightThrow2
|
|
// test.kt:35 mightThrow2
|
|
// test.kt:12 foo
|
|
// test.kt:19 foo
|
|
// test.kt:38 mightThrow3
|
|
// test.kt:38 mightThrow3
|
|
// test.kt:20 foo
|
|
// test.kt:21 foo
|
|
// test.kt:46 box
|
|
// test.kt:47 box
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:31 mightThrow
|
|
// test.kt:13 foo
|
|
// test.kt:34 mightThrow2
|
|
// test.kt:34 mightThrow2
|
|
// test.kt:14 foo
|
|
// test.kt:15 foo
|
|
// test.kt:48 box
|
|
// test.kt:49 box
|
|
// test.kt:7 foo
|
|
// test.kt:30 mightThrow
|
|
// test.kt:30 mightThrow
|
|
// test.kt:8 foo
|
|
// test.kt:8 foo
|
|
// test.kt:9 foo
|
|
// test.kt:50 box
|