summaryrefslogtreecommitdiff
path: root/sources/scalac/symtab/classfile/UnPickle.java
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-02-29 20:08:40 +0000
committerpaltherr <paltherr@epfl.ch>2004-02-29 20:08:40 +0000
commit00478513fc3a30fb152ba1934274031ad03d28be (patch)
tree665ffadc07fdde606a7ae857f63fcf0b3808cfa6 /sources/scalac/symtab/classfile/UnPickle.java
parent810d03161421b48964bb0a81339a02c9644eb7a8 (diff)
downloadscala-00478513fc3a30fb152ba1934274031ad03d28be.tar.gz
scala-00478513fc3a30fb152ba1934274031ad03d28be.tar.bz2
scala-00478513fc3a30fb152ba1934274031ad03d28be.zip
- Removed Definitions.ROOT
- Changed ROOT_CLASS into a non-module class.
Diffstat (limited to 'sources/scalac/symtab/classfile/UnPickle.java')
-rw-r--r--sources/scalac/symtab/classfile/UnPickle.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/sources/scalac/symtab/classfile/UnPickle.java b/sources/scalac/symtab/classfile/UnPickle.java
index c36e1433a5..52831297e7 100644
--- a/sources/scalac/symtab/classfile/UnPickle.java
+++ b/sources/scalac/symtab/classfile/UnPickle.java
@@ -186,7 +186,10 @@ public class UnPickle implements Kinds, Modifiers, EntryTags, TypeTags {
}
if (name == Names.ROOT && owner == Symbol.NONE) {
sym = Global.instance.definitions.ROOT_CLASS;
- if (tag == EXTref) sym = sym.module();
+ if (tag == EXTref) sym = sym;
+ // !!! line above is usefull for the transition
+ // !!! after some time, replace it by the following line:
+ // !!! assert tag != EXTref;
} else {
sym = owner.info().lookup(name);
if (tag == EXTMODCLASSref) {
@@ -336,7 +339,12 @@ public class UnPickle implements Kinds, Modifiers, EntryTags, TypeTags {
: Type.ThisType(sym);
break;
case SINGLEtpe:
- tpe = Type.singleType(readTypeRef(), readSymbolRef());
+ Type prefix = readTypeRef();
+ Symbol symbol = readSymbolRef();
+ tpe = symbol.isRoot() ? symbol.thisType() : Type.singleType(prefix, symbol);
+ // !!! code above is usefull for the transition
+ // !!! after some time, replace it by the following line:
+ // !!! tpe = Type.singleType(readTypeRef(), readSymbolRef());
break;
case CONSTANTtpe:
Type base = readTypeRef();