aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/Compiler.scala
diff options
context:
space:
mode:
authorDmitry Petrashko <dmitry.petrashko@gmail.com>2015-01-29 18:13:40 +0100
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2015-02-03 14:58:52 +0100
commit6689cce56c15027f594dcc782f7823956dc996b7 (patch)
tree99aa2b7c40ca51c6bdf31254f4ec02b503f09210 /src/dotty/tools/dotc/Compiler.scala
parentb09c2e8d0460a8c6675783b6a31f4269dff7aa3a (diff)
downloaddotty-6689cce56c15027f594dcc782f7823956dc996b7.tar.gz
dotty-6689cce56c15027f594dcc782f7823956dc996b7.tar.bz2
dotty-6689cce56c15027f594dcc782f7823956dc996b7.zip
Bring back lazyVals. Changed encoding of local lazy vals.
Now the scheme doesn't introduce circular dependencies between container vals.
Diffstat (limited to 'src/dotty/tools/dotc/Compiler.scala')
-rw-r--r--src/dotty/tools/dotc/Compiler.scala5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/Compiler.scala b/src/dotty/tools/dotc/Compiler.scala
index c5c1d8713..721b52b2e 100644
--- a/src/dotty/tools/dotc/Compiler.scala
+++ b/src/dotty/tools/dotc/Compiler.scala
@@ -52,7 +52,8 @@ class Compiler {
List(new PatternMatcher,
new ExplicitOuter,
new Splitter),
- List(new ElimByName,
+ List(new LazyVals,
+ new ElimByName,
new SeqLiterals,
new InterceptedMethods,
new Literalize,
@@ -60,7 +61,7 @@ class Compiler {
new ResolveSuper),
List(new Erasure),
List(new Mixin,
- new Memoize, // TODO: Make LazyVals a part of this phase
+ new Memoize,
new CapturedVars,
new Constructors),
List(new LambdaLift,