// Stage-3 regression smoke: break/continue executes once; with bridge throw/try flags enabled the catch sets 42 and cleanup runs.
static box Main {
  main() {
    local break_counter = 0
    loop (true) {
      break_counter = break_counter + 1
      if break_counter == 3 {
        break
      }
      continue
    }

    local caught = 0
    local finally_flag = 0
    try {
      throw 42
    } catch (Error e) {
      caught = 42
    } cleanup {
      finally_flag = 1
    }

    print("Result: " + (break_counter + caught + finally_flag))
    return 0
  }
}
