summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@epfl.ch>2012-08-14 08:56:26 +0200
committerAdriaan Moors <adriaan.moors@epfl.ch>2012-08-14 09:37:19 +0200
commit3ccaa1026e7e74d99fe39c9608e28c48b422e2c9 (patch)
treea1187b22900d5904f9ba6e5664440a8248491f5a /src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala
parent48d9fb7307fb6519fe786a7d9be97996c5812fb7 (diff)
parent12baa2ea399b4f281c62fd20479c1e626f244d03 (diff)
downloadscala-3ccaa1026e7e74d99fe39c9608e28c48b422e2c9.tar.gz
scala-3ccaa1026e7e74d99fe39c9608e28c48b422e2c9.tar.bz2
scala-3ccaa1026e7e74d99fe39c9608e28c48b422e2c9.zip
Merge branch '2.10.x'
Conflicts: src/compiler/scala/tools/nsc/Global.scala src/compiler/scala/tools/nsc/typechecker/Typers.scala test/files/neg/t6048.check
Diffstat (limited to 'src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala')
-rw-r--r--src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala12
1 files changed, 3 insertions, 9 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala
index f7d7f35f69..34f5ac611c 100644
--- a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala
+++ b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala
@@ -497,16 +497,10 @@ abstract class ExplicitOuter extends InfoTransform
else atPos(tree.pos)(outerPath(outerValue, currentClass.outerClass, sym)) // (5)
case Select(qual, name) =>
- /** return closest enclosing method, unless shadowed by an enclosing class;
- * no use of closures here in the interest of speed.
- */
- def closestEnclMethod(from: Symbol): Symbol =
- if (from.isSourceMethod) from
- else if (from.isClass) NoSymbol
- else closestEnclMethod(from.owner)
-
+ // make not private symbol acessed from inner classes, as well as
+ // symbols accessed from @inline methods
if (currentClass != sym.owner ||
- (closestEnclMethod(currentOwner) hasAnnotation ScalaInlineClass))
+ (sym.owner.enclMethod hasAnnotation ScalaInlineClass))
sym.makeNotPrivate(sym.owner)
val qsym = qual.tpe.widen.typeSymbol