Files
kotlin-fork/compiler/testData/codegen/box/diagnostics/functions/tailRecursion/multilevelBlocks.kt
T
Svyatoslav Kuzmich a3e2d2804c [Wasm] Update testData after adding K2 and new test infra support.
- Actualize muted K2 tests
- Actualize muted K1 tests with module systems because legacy Wasm test
  infra had no respect for "// MODULE: ..." test directives
2023-06-25 10:20:40 +02:00

19 lines
478 B
Kotlin
Vendored

// TODO: muted automatically, investigate should it be ran for JS or not
// IGNORE_BACKEND: JS
tailrec fun test(x : Int) : Int {
if (x == 1) {
if (x != 1) {
<!NON_TAIL_RECURSIVE_CALL!>test<!>(0)
return test(0)
} else {
return test(x + <!NON_TAIL_RECURSIVE_CALL!>test<!>(0))
}
} else if (x > 0) {
return test(x - 1)
}
return -1
}
fun box() : String = if (test(1000000) == -1) "OK" else "FAIL"