summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2010-02-15 06:32:50 +0000
committerPaul Phillips <paulp@improving.org>2010-02-15 06:32:50 +0000
commit15dfc92cdd7f345943b54196d8047e26c2d206e0 (patch)
tree6122be2b4c7ab8a58d96da308c47196dd257aa9a /src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
parent1ec5bf5c82ab29a565eeeec2ce8df2bddab7da0b (diff)
downloadscala-15dfc92cdd7f345943b54196d8047e26c2d206e0.tar.gz
scala-15dfc92cdd7f345943b54196d8047e26c2d206e0.tar.bz2
scala-15dfc92cdd7f345943b54196d8047e26c2d206e0.zip
Restored the disabled exception in classfilepar...
Restored the disabled exception in classfileparser. Strange quick behavior was being caused by multiple occurrences of some classpath elements. No review.
Diffstat (limited to 'src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala')
-rw-r--r--src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
index 1f1a41055c..745761a065 100644
--- a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
+++ b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala
@@ -429,8 +429,10 @@ abstract class ClassfileParser {
}
}
- if (c != clazz && externalName.toString.indexOf("$") < 0 && (clazz eq NoSymbol) && (c ne NoSymbol))
- clazz = c
+ if (c != clazz && externalName.toString.indexOf("$") < 0) {
+ if ((clazz eq NoSymbol) && (c ne NoSymbol)) clazz = c
+ else throw new IOException("class file '" + in.file + "' contains wrong " + c)
+ }
addEnclosingTParams(clazz)
parseInnerClasses() // also sets the isScala / isScalaRaw / hasMeta flags, see r15956