// FILE: test.kt fun foo(x: Int) { when { x == 21 -> foo(42) x == 42 -> foo(63) else -> 1 } val t = when { x == 21 -> foo(42) x == 42 -> foo(63) else -> 2 } } fun box() { foo(21) } // IGNORE_BACKEND: JVM_IR // The JVM_IR backend has line number 8 when leaving the first // when. Also, the stepping is different, probably because the when // is compiled to a switch which it isn't with JVM? The stepping // behavior is likely OK, but should be double checked. // LINENUMBERS // test.kt:18 box // test.kt:4 foo // test.kt:5 foo // test.kt:4 foo // test.kt:5 foo // test.kt:6 foo // test.kt:4 foo // test.kt:5 foo // test.kt:6 foo // test.kt:7 foo // test.kt:10 foo // test.kt:11 foo // test.kt:12 foo // test.kt:13 foo // test.kt:10 foo // test.kt:15 foo // test.kt:6 foo // test.kt:10 foo // test.kt:11 foo // test.kt:12 foo // test.kt:4 foo // test.kt:5 foo // test.kt:6 foo // test.kt:7 foo // test.kt:10 foo // test.kt:11 foo // test.kt:12 foo // test.kt:13 foo // test.kt:10 foo // test.kt:15 foo // test.kt:12 foo // test.kt:10 foo // test.kt:15 foo // test.kt:5 foo // test.kt:10 foo // test.kt:11 foo // test.kt:4 foo // test.kt:5 foo // test.kt:6 foo // test.kt:4 foo // test.kt:5 foo // test.kt:6 foo // test.kt:7 foo // test.kt:10 foo // test.kt:11 foo // test.kt:12 foo // test.kt:13 foo // test.kt:10 foo // test.kt:15 foo // test.kt:6 foo // test.kt:10 foo // test.kt:11 foo // test.kt:12 foo // test.kt:4 foo // test.kt:5 foo // test.kt:6 foo // test.kt:7 foo // test.kt:10 foo // test.kt:11 foo // test.kt:12 foo // test.kt:13 foo // test.kt:10 foo // test.kt:15 foo // test.kt:12 foo // test.kt:10 foo // test.kt:15 foo // test.kt:11 foo // test.kt:10 foo // test.kt:15 foo // test.kt:19 box