diff options
author | paltherr <paltherr@epfl.ch> | 2004-02-29 20:08:40 +0000 |
---|---|---|
committer | paltherr <paltherr@epfl.ch> | 2004-02-29 20:08:40 +0000 |
commit | 00478513fc3a30fb152ba1934274031ad03d28be (patch) | |
tree | 665ffadc07fdde606a7ae857f63fcf0b3808cfa6 /sources/scalac/symtab/classfile/UnPickle.java | |
parent | 810d03161421b48964bb0a81339a02c9644eb7a8 (diff) | |
download | scala-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.java | 12 |
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(); |