diff options
author | Paul Phillips <paulp@improving.org> | 2009-10-17 13:02:10 +0000 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2009-10-17 13:02:10 +0000 |
commit | aaae8db368ea3d67cfc60df471fe908abb0f4fa2 (patch) | |
tree | 4b0ab89af628d5597ebc962d85b2962860d57439 | |
parent | 4cb4ad76b213389b828ae9c1ab26c9d7a1c3a7c2 (diff) | |
download | scala-aaae8db368ea3d67cfc60df471fe908abb0f4fa2.tar.gz scala-aaae8db368ea3d67cfc60df471fe908abb0f4fa2.tar.bz2 scala-aaae8db368ea3d67cfc60df471fe908abb0f4fa2.zip |
Fix for #1687.
-rw-r--r-- | src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala index 3e3b4961e0..1eef2bf49d 100644 --- a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala +++ b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala @@ -1105,7 +1105,10 @@ abstract class ClassfileParser { private def setPrivateWithin(sym: Symbol, jflags: Int) { if ((jflags & (JAVA_ACC_PRIVATE | JAVA_ACC_PROTECTED | JAVA_ACC_PUBLIC)) == 0) - sym.privateWithin = sym.toplevelClass.owner + // See ticket #1687 for an example of when topLevelClass is NoSymbol: it + // apparently occurs when processing v45.3 bytecode. + if (sym.toplevelClass != NoSymbol) + sym.privateWithin = sym.toplevelClass.owner } @inline final private def isPrivate(flags: Int) = |