From 8783026bc399929331a5ec5d24abbb91c27a73b0 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Tue, 10 Mar 2015 13:39:21 +0100 Subject: Move ElimByName as late as possible. ElimByName might be merged with erasure, so we can alreayd move it as close a pssoble to it. Verified that it can't be moved beyong ResolevSuper, but not why. --- src/dotty/tools/dotc/transform/ResolveSuper.scala | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/dotty/tools/dotc/transform/ResolveSuper.scala') 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 -- cgit v1.2.3