aboutsummaryrefslogtreecommitdiff
path: root/tests/pos/tailcall/t6574.scala
Commit message (Collapse)AuthorAgeFilesLines
* Fix to rewire typesMartin Odersky2014-07-171-2/+6
| | | | | | | t6574 has a new test where we produce identical code in an if-then-else. This broke the rewiring logic before, and is fixed now. Also, more comments and test cases.
* TailRec phase and tests for it.Dmitry Petrashko2014-04-111-0/+19
Ported tailcall phase from scalac with such changes: - all transformation is done in the phase itself (previously half of the work was done in backend) - it is now able to run before uncurry - it is now a treeTransform - renamed to tailrec to make it more obvious that this phase transforms only recursive calls. For now this is a single phase which speculatively transforms DefDefs. Speculation can be potentially removed by splitting into 2 phases: one detecting which methods should be transformed second performing transformation. But, as transformation requires as same amount of work as detection, I believe it will be simpler to maintain it as a single phase. Conflicts: tests/pos/typers.scala