summaryrefslogtreecommitdiff
path: root/sources/scalac/symtab/classfile/Pickle.java
diff options
context:
space:
mode:
Diffstat (limited to 'sources/scalac/symtab/classfile/Pickle.java')
-rw-r--r--sources/scalac/symtab/classfile/Pickle.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/sources/scalac/symtab/classfile/Pickle.java b/sources/scalac/symtab/classfile/Pickle.java
index 6b58cbf72c..bdc552e507 100644
--- a/sources/scalac/symtab/classfile/Pickle.java
+++ b/sources/scalac/symtab/classfile/Pickle.java
@@ -174,7 +174,8 @@ public class Pickle implements Kinds, Modifiers, EntryTags {
putTypes(args);
break;
case CompoundType(Type[] parents, Scope members):
- putSymbol(tp.symbol());
+ if (!tp.symbol().isCompoundSym())
+ putSymbol(tp.symbol());
putTypes(parents);
break;
case MethodType(Symbol[] vparams, Type result):
@@ -377,7 +378,8 @@ public class Pickle implements Kinds, Modifiers, EntryTags {
case CompoundType(Type[] parents, Scope members):
writeByte(COMPOUNDtpe);
writeByte(0); // space for length
- writeRef(tp.symbol());
+ if (!tp.symbol().isCompoundSym())
+ writeRef(tp.symbol());
writeRefs(parents);
break;