diff options
-rw-r--r-- | src/dotty/tools/dotc/Compiler.scala | 2 | ||||
-rw-r--r-- | src/dotty/tools/dotc/transform/ElimByName.scala | 2 | ||||
-rw-r--r-- | src/dotty/tools/dotc/transform/ResolveSuper.scala | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/Compiler.scala b/src/dotty/tools/dotc/Compiler.scala index 4d93e1dd8..0911197bd 100644 --- a/src/dotty/tools/dotc/Compiler.scala +++ b/src/dotty/tools/dotc/Compiler.scala @@ -53,11 +53,11 @@ class Compiler { new ExplicitOuter, new Splitter), List(new LazyVals, - new ElimByName, new SeqLiterals, new InterceptedMethods, new Literalize, new Getters, + new ElimByName, new ResolveSuper), List(new Erasure), List(new Mixin, diff --git a/src/dotty/tools/dotc/transform/ElimByName.scala b/src/dotty/tools/dotc/transform/ElimByName.scala index ca84fcaec..ff774b462 100644 --- a/src/dotty/tools/dotc/transform/ElimByName.scala +++ b/src/dotty/tools/dotc/transform/ElimByName.scala @@ -47,7 +47,7 @@ import ast.Trees._ * other options which have been abandoned or not yet pursued. * * Option 1: Transform => T to () => T also in method and function types. The problem with this is - * that is that it rewuires to look at every type, and this forces too much, causing + * that is that it requires to look at every type, and this forces too much, causing * Cyclic Reference errors. Abandoned for this reason. * * Option 2: Merge ElimByName with erasure, or have it run immediately before. This has not been diff --git a/src/dotty/tools/dotc/transform/ResolveSuper.scala b/src/dotty/tools/dotc/transform/ResolveSuper.scala index 953c8b74d..921a5f1fa 100644 --- a/src/dotty/tools/dotc/transform/ResolveSuper.scala +++ b/src/dotty/tools/dotc/transform/ResolveSuper.scala @@ -48,6 +48,8 @@ class ResolveSuper extends MiniPhaseTransform with IdentityDenotTransformer { th override def phaseName: String = "resolveSuper" + override def runsAfter = Set(classOf[ElimByName]) // verified empirically, need to figure out what the reason is. + /** Returns the symbol that is accessed by a super-accessor in a mixin composition. * * @param base The class in which everything is mixed together |