All tests for TCO moved to box (with diagnostics marked up)

This commit is contained in:
Andrey Breslav
2013-12-06 11:08:29 +04:00
parent 1849643e52
commit 71be3bcec5
19 changed files with 205 additions and 97 deletions
@@ -0,0 +1,17 @@
tailRecursive 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"
}