From eb0969baedaf683eadf237db62385a68d85e8124 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Tue, 30 Jan 2007 18:31:55 +0000 Subject: fixed bug920 --- src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala index 010ef4f5ee..910e34cf9d 100644 --- a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala +++ b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala @@ -380,11 +380,15 @@ abstract class ExplicitOuter extends InfoTransform with TransMatcher with Patter Console.println("cc " + currentClass + ":" + currentClass.info.decls + " at " + phase)//debug assert(outerAcc != NoSymbol) - val path = gen.mkAttributedQualifier(currentClass.thisType.baseType(mixinClass).prefix) + val path = + if (mixinClass.owner.isTerm) gen.mkAttributedThis(mixinClass.owner.enclClass) + else gen.mkAttributedQualifier(currentClass.thisType.baseType(mixinClass).prefix) val rhs = ExplicitOuterTransformer.this.transform(path) localTyper.typed { atPos(currentClass.pos) { - DefDef(outerAcc, {vparamss=>rhs}) + val result = DefDef(outerAcc, {vparamss=>rhs}) + Console.println("==> "+result) + result } } } -- cgit v1.2.3