summaryrefslogtreecommitdiff
path: root/sources/scalac/symtab/classfile/Pickle.java
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2003-08-21 09:44:58 +0000
committerMartin Odersky <odersky@gmail.com>2003-08-21 09:44:58 +0000
commit8341c5c36e88000e24bfd26d62c98805fc96fdcf (patch)
treee79189602238f756f686bf7805d91289cbe22d2c /sources/scalac/symtab/classfile/Pickle.java
parentda5c361c7af30fc25f542bad8e12f3fceefc144d (diff)
downloadscala-8341c5c36e88000e24bfd26d62c98805fc96fdcf.tar.gz
scala-8341c5c36e88000e24bfd26d62c98805fc96fdcf.tar.bz2
scala-8341c5c36e88000e24bfd26d62c98805fc96fdcf.zip
*** empty log message ***
Diffstat (limited to 'sources/scalac/symtab/classfile/Pickle.java')
-rw-r--r--sources/scalac/symtab/classfile/Pickle.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/sources/scalac/symtab/classfile/Pickle.java b/sources/scalac/symtab/classfile/Pickle.java
index 58b2888d79..8cf0efd2de 100644
--- a/sources/scalac/symtab/classfile/Pickle.java
+++ b/sources/scalac/symtab/classfile/Pickle.java
@@ -80,8 +80,10 @@ public class Pickle implements Kinds, Modifiers, EntryTags {
*/
private boolean isLocal(Symbol sym) {
return
- sym.name.toTermName() == rootname &&
- sym.owner() == rootowner ||
+ sym.name.toTermName() == rootname && sym.owner() == rootowner
+ ||
+ sym.isConstructor() && isLocal(sym.primaryConstructorClass())
+ ||
(sym.kind != NONE && isLocal(sym.owner()));
}
@@ -333,6 +335,7 @@ public class Pickle implements Kinds, Modifiers, EntryTags {
} else {
writeByte(EXTref);
writeByte(0); // space for length
+ assert !sym.isConstructor() : sym;
writeRef(sym.name);
}
if (sym.owner() != Global.instance.definitions.ROOT_CLASS)