diff options
author | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-08-10 00:16:54 -0700 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-08-10 00:16:54 -0700 |
commit | 9d890c6f96865f65ff1b878e8ea5c6112e4f5f3f (patch) | |
tree | 42ce595750b7c22d731780dab447d2aff2e165bc | |
parent | 0e2080e8bf1c54cac59c5b0c53a93eb0de009d3b (diff) | |
parent | f71dca29e4b292d0df8c2cc616477dc6b4f522c1 (diff) | |
download | scala-9d890c6f96865f65ff1b878e8ea5c6112e4f5f3f.tar.gz scala-9d890c6f96865f65ff1b878e8ea5c6112e4f5f3f.tar.bz2 scala-9d890c6f96865f65ff1b878e8ea5c6112e4f5f3f.zip |
Merge pull request #1104 from odersky/2.10.x
Made inliner work for @inline methods that access private variables.
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/opt/Inliners.scala | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/opt/Inliners.scala b/src/compiler/scala/tools/nsc/backend/opt/Inliners.scala index d87a242f1b..5464b6fc3b 100644 --- a/src/compiler/scala/tools/nsc/backend/opt/Inliners.scala +++ b/src/compiler/scala/tools/nsc/backend/opt/Inliners.scala @@ -661,13 +661,15 @@ abstract class Inliners extends SubComponent { * * TODO handle more robustly the case of a trait var changed at the source-level from public to private[this] * (eg by having ICodeReader use unpickler, see SI-5442). - * */ + + DISABLED + def potentiallyPublicized(f: Symbol): Boolean = { (m.sourceFile eq NoSourceFile) && f.name.containsChar('$') } + */ - def checkField(f: Symbol) = check(f, potentiallyPublicized(f) || - (f.isPrivate && !canMakePublic(f))) + def checkField(f: Symbol) = check(f, f.isPrivate && !canMakePublic(f)) def checkSuper(n: Symbol) = check(n, n.isPrivate || !n.isClassConstructor) def checkMethod(n: Symbol) = check(n, n.isPrivate) |