aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/transform/PatternMatcher.scala
diff options
context:
space:
mode:
authorDmitry Petrashko <dmitry.petrashko@gmail.com>2014-09-29 17:07:33 +0200
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2014-10-11 06:39:09 +0200
commit5f87089d1fb98facfdfddd01fb033af5c33ca673 (patch)
tree5cb0aa0a21d28d9b419c55be9e949cc1da62da43 /src/dotty/tools/dotc/transform/PatternMatcher.scala
parentcb18aa3a4ff7eea8626153e27d7266f47851f80c (diff)
downloaddotty-5f87089d1fb98facfdfddd01fb033af5c33ca673.tar.gz
dotty-5f87089d1fb98facfdfddd01fb033af5c33ca673.tar.bz2
dotty-5f87089d1fb98facfdfddd01fb033af5c33ca673.zip
Document why patternMatcher needs to be after tailrec.
Diffstat (limited to 'src/dotty/tools/dotc/transform/PatternMatcher.scala')
-rw-r--r--src/dotty/tools/dotc/transform/PatternMatcher.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/dotty/tools/dotc/transform/PatternMatcher.scala b/src/dotty/tools/dotc/transform/PatternMatcher.scala
index b6e4d8f56..f56c83f72 100644
--- a/src/dotty/tools/dotc/transform/PatternMatcher.scala
+++ b/src/dotty/tools/dotc/transform/PatternMatcher.scala
@@ -12,6 +12,7 @@ import core.StdNames._
import dotty.tools.dotc.ast.{TreeTypeMap, tpd}
import dotty.tools.dotc.core
import dotty.tools.dotc.core.DenotTransformers.DenotTransformer
+import dotty.tools.dotc.core.Phases.Phase
import dotty.tools.dotc.core.{TypeApplications, Flags}
import dotty.tools.dotc.typer.Applications
import dotty.tools.dotc.util.Positions
@@ -41,6 +42,8 @@ class PatternMatcher extends MiniPhaseTransform with DenotTransformer {thisTrans
override def runsAfter = Set(classOf[ElimRepeated])
+ override def runsAfterGroupsOf = Set(classOf[TailRec]) // tailrec is not capable of reversing the patmat tranformation made for tree
+
override def phaseName = "patternMatcher"
var _id = 0