// FIR_IDENTICAL // LANGUAGE: -BreakContinueInInlineLambdas // TARGET_BACKEND: JVM_IR // IGNORE_ERRORS // WITH_STDLIB inline fun foo(block: () -> Unit) { block() } inline fun bar(block1: () -> Unit, noinline block2: () -> Unit, crossinline block3: () -> Unit = {}) { block1() block2() block3() } fun test1() { while (true) { foo { break } foo { continue } foo(fun () { break }) foo(fun () { continue }) } } fun test2() { while (true) { bar({break}, {}) bar({continue}, {}) bar(fun () {break}, fun () {}) bar(fun () {continue}, fun () {}) } } fun test3() { while (true) { bar({}, { break }, { break }) bar({}, { continue }, { break }) } }