diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2007-07-13 15:29:46 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2007-07-13 15:29:46 +0000 |
commit | eeff0aed80ad3a4e7075a6e0821635e8d0f39707 (patch) | |
tree | 4a2d9e78554461db311268a3ddb2fd73a7c2204e /src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala | |
parent | 76223e85e21418d373f19c43b0e89da4616323dc (diff) | |
download | scala-eeff0aed80ad3a4e7075a6e0821635e8d0f39707.tar.gz scala-eeff0aed80ad3a4e7075a6e0821635e8d0f39707.tar.bz2 scala-eeff0aed80ad3a4e7075a6e0821635e8d0f39707.zip |
Fixed bug #1211 by making accessors in traits n...
Fixed bug #1211 by making accessors in traits non-private in the type
transformer instead of the term transformer.
Diffstat (limited to 'src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala index dd20917dd0..5a247a96ac 100644 --- a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala +++ b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala @@ -105,6 +105,9 @@ abstract class ExplicitOuter extends InfoTransform with TransMatcher with Patter if (sym.owner.isTrait && ((sym hasFlag SUPERACCESSOR) || sym.isModule)) { // 5 sym.makeNotPrivate(sym.owner) } + // moved form the term transformer + if (sym.owner.isTrait && (sym hasFlag (ACCESSOR | SUPERACCESSOR))) + sym.makeNotPrivate(sym.owner); //(2) if (sym.owner.isTrait && (sym hasFlag PROTECTED)) sym setFlag notPROTECTED // 6 if (sym.isClassConstructor && isInner(sym.owner)) // 1 MethodType(sym.owner.outerClass.thisType :: formals, restpe) @@ -354,11 +357,8 @@ abstract class ExplicitOuter extends InfoTransform with TransMatcher with Patter } else vparamss super.transform(copy.DefDef(tree, mods, name, tparams, vparamss1, tpt, rhs)) } - } else { //todo: see whether we can move this to transformInfo - if (sym.owner.isTrait && (sym hasFlag (ACCESSOR | SUPERACCESSOR))) - sym.makeNotPrivate(sym.owner); //(2) + } else super.transform(tree) - } case This(qual) => if (sym == currentClass || (sym hasFlag MODULE) && sym.isStatic) tree |