aboutsummaryrefslogtreecommitdiff
path: root/tests/run/t8893b.scala
blob: 19120871aa84287f60f430f7379b26d61694a065 (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 posiiton*/
      tick(i - 1)
    } else tick(i - 1)

  def main(args: Array[String]): Unit = {
    tick(1000000)
  }
}