Indirect tests for tail call diagnostics removed

This commit is contained in:
Andrey Breslav
2013-11-26 21:21:36 +04:00
parent 94500bd968
commit 0316e6cb8d
20 changed files with 80 additions and 451 deletions
@@ -1,23 +1,21 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
tailRecursive fun test(x : Int, e : Any) : Unit {
tailRecursive fun test(x : Int) : Unit {
if (x == 1) {
test(x - 1, "tail")
test(x - 1)
} else if (x == 2) {
test(x - 1, "tail")
test(x - 1)
return
} else if (x == 3) {
<!NON_TAIL_RECURSIVE_CALL!>test<!>(x - 1, "no tail")
<!NON_TAIL_RECURSIVE_CALL!>test<!>(x - 1)
if (x == 3) {
test(x - 1, "tail")
test(x - 1)
}
return
} else if (x > 0) {
test(x - 1, "tail")
test(x - 1)
}
}
fun box() : String {
test(1000000, "test")
test(1000000)
return "OK"
}