summaryrefslogtreecommitdiff
path: root/sources/scalac/symtab/classfile/UnPickle.java
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-03-04 00:14:00 +0000
committerpaltherr <paltherr@epfl.ch>2004-03-04 00:14:00 +0000
commit5ff59b4a7aa36c480dd2284544a2c14bd498301d (patch)
treeffbc953714ef0fd039aec75d69395ffea6a6f23e /sources/scalac/symtab/classfile/UnPickle.java
parent67089f9e05c90c5ae484b614ee8c64cf0cb62052 (diff)
downloadscala-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.java11
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();