Files
kotlin-fork/compiler/testData/codegen/box/diagnostics/functions/tailRecursion/functionWithNonTailRecursions.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

21 lines
486 B
Kotlin
Vendored

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