blob: 066425aab6472aed074328a9e784590913353a55 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
// Testing that recursive calls in tail positions are replaced with
// jumps, even though the method contains recursive calls outside
// of the tail position.
object Test {
def tick(i : Int): Unit =
if (i == 0) ()
else if (i == 42) {
tick(0) /*not in tail position*/
tick(i - 1)
} else tick(i - 1)
def main(args: Array[String]): Unit = {
tick(1000000)
}
}
|