18 lines
545 B
Kotlin
Vendored
18 lines
545 B
Kotlin
Vendored
// DONT_TARGET_EXACT_BACKEND: WASM
|
|
// WASM_MUTE_REASON: IGNORED_IN_JS
|
|
// IGNORE_BACKEND: JS_IR
|
|
// IGNORE_BACKEND: JS_IR_ES6
|
|
// TODO: muted automatically, investigate should it be ran for JS or not
|
|
// DONT_RUN_GENERATED_CODE: JS
|
|
// IGNORE_BACKEND: JS
|
|
|
|
tailrec fun test(counter : Int) : Int? {
|
|
if (counter < 0) return null
|
|
if (counter == 0) return 777
|
|
|
|
return <!NON_TAIL_RECURSIVE_CALL!>test<!>(-1) ?: <!NON_TAIL_RECURSIVE_CALL!>test<!>(-2) ?: test(counter - 1)
|
|
}
|
|
|
|
fun box() : String =
|
|
if (test(100000) == 777) "OK"
|
|
else "FAIL" |