diff options
author | Iulian Dragos <jaguarul@gmail.com> | 2006-11-02 16:41:51 +0000 |
---|---|---|
committer | Iulian Dragos <jaguarul@gmail.com> | 2006-11-02 16:41:51 +0000 |
commit | f25687d77f8328de0797fca94f5d091c397e8102 (patch) | |
tree | 1a3122f32532b021187b8dec94e4d9027e56cfef /src/compiler | |
parent | d433eb14c8a069f349979282b0acb71cedb43b49 (diff) | |
download | scala-f25687d77f8328de0797fca94f5d091c397e8102.tar.gz scala-f25687d77f8328de0797fca94f5d091c397e8102.tar.bz2 scala-f25687d77f8328de0797fca94f5d091c397e8102.zip |
Classes in the empty package are found now when...
Classes in the empty package are found now when referred as types from external classfiles -- was 'classfile is broken'
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala | 6 |
1 files changed, 5 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 822c1fa35c..f005b53921 100644 --- a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala +++ b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala @@ -320,7 +320,11 @@ abstract class ClassfileParser { while (name(index) != ';') { index = index + 1 } val end = index index = index + 1 - definitions.getClass(name.subName(start, end)).tpe + val clsName = name.subName(start, end) + if (clsName.pos('.') == clsName.length) + definitions.getMember(definitions.EmptyPackageClass, clsName.toTypeName).tpe + else + definitions.getClass(clsName).tpe case ARRAY_TAG => while ('0' <= name(index) && name(index) <= '9') index = index + 1 appliedType(definitions.ArrayClass.tpe, List(sig2type)) |