diff options
Diffstat (limited to 'src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala index ccf14b17c6..8c6a5a585c 100644 --- a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala +++ b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala @@ -309,9 +309,11 @@ abstract class ExplicitOuter extends InfoTransform with TransMatcher with Patter if (mixinClass.owner.isTerm) gen.mkAttributedThis(mixinClass.owner.enclClass) else gen.mkAttributedQualifier(currentClass.thisType.baseType(mixinClass).prefix) val rhs = ExplicitOuterTransformer.this.transform(path) + rhs.setPos(currentClass.pos) // see note below localTyper.typed { atPos(currentClass.pos) { - DefDef(outerAcc, {vparamss=>rhs}) + // @S: atPos not good enough because of nested atPos in DefDef method, which gives position from wrong class! + DefDef(outerAcc, {vparamss=>rhs}).setPos(currentClass.pos) } } } |