diff options
author | paltherr <paltherr@epfl.ch> | 2004-03-04 00:14:00 +0000 |
---|---|---|
committer | paltherr <paltherr@epfl.ch> | 2004-03-04 00:14:00 +0000 |
commit | 5ff59b4a7aa36c480dd2284544a2c14bd498301d (patch) | |
tree | ffbc953714ef0fd039aec75d69395ffea6a6f23e /sources/scalac/symtab/classfile/UnPickle.java | |
parent | 67089f9e05c90c5ae484b614ee8c64cf0cb62052 (diff) | |
download | scala-5ff59b4a7aa36c480dd2284544a2c14bd498301d.tar.gz scala-5ff59b4a7aa36c480dd2284544a2c14bd498301d.tar.bz2 scala-5ff59b4a7aa36c480dd2284544a2c14bd498301d.zip |
- Added Type.NoPrefix
- Replaced ThisType(NONE) by NoPrefix
Diffstat (limited to 'sources/scalac/symtab/classfile/UnPickle.java')
-rw-r--r-- | sources/scalac/symtab/classfile/UnPickle.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/sources/scalac/symtab/classfile/UnPickle.java b/sources/scalac/symtab/classfile/UnPickle.java index 52831297e7..7efb9c318f 100644 --- a/sources/scalac/symtab/classfile/UnPickle.java +++ b/sources/scalac/symtab/classfile/UnPickle.java @@ -103,7 +103,7 @@ public class UnPickle implements Kinds, Modifiers, EntryTags, TypeTags { boolean isTypeEntry(int i) { int tag = bytes[index[i]]; - return (firstTypeTag <= tag && tag <= lastTypeTag); + return (firstTypeTag <= tag && tag <= lastTypeTag) || tag == NOpre; } boolean isSymbolEntry(int i) { @@ -333,10 +333,15 @@ public class UnPickle implements Kinds, Modifiers, EntryTags, TypeTags { case NOtpe: tpe = Type.NoType; break; + case NOpre: + tpe = Type.NoPrefix; + break; case THIStpe: Symbol sym = readSymbolRef(); - tpe = (sym.kind == NONE) ? Type.localThisType - : Type.ThisType(sym); + tpe = (sym.kind == NONE) ? Type.NoPrefix : Type.ThisType(sym); + // !!! code above is usefull for the transition + // !!! after some time, replace it by the following line: + // !!! tpe = Type.ThisType(readSymbolRef()); break; case SINGLEtpe: Type prefix = readTypeRef(); |