summaryrefslogtreecommitdiff
path: root/sources/scalac/transformer/ExpandMixinsPhase.java
diff options
context:
space:
mode:
Diffstat (limited to 'sources/scalac/transformer/ExpandMixinsPhase.java')
-rw-r--r--sources/scalac/transformer/ExpandMixinsPhase.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/sources/scalac/transformer/ExpandMixinsPhase.java b/sources/scalac/transformer/ExpandMixinsPhase.java
index 575a01c959..83ec681a38 100644
--- a/sources/scalac/transformer/ExpandMixinsPhase.java
+++ b/sources/scalac/transformer/ExpandMixinsPhase.java
@@ -105,6 +105,7 @@ public class ExpandMixinsPhase extends Phase {
if (symbol.isJava()) return type;
if (symbol.isPackage()) return type;
if (symbol.isInterface()) return type;
+ if (symbol.isCompoundSym()) return type; // !!! check
if (symbol.isClass()) {
// !!! System.out.println(Debug.show("!!! ", s, " -> ", symbol, " - ", getTypeExpander(symbol).clasz, " : " + type));
return getTypeExpander(symbol).apply(type);
@@ -423,7 +424,7 @@ public class ExpandMixinsPhase extends Phase {
symbol = prefix.rebind(symbol);
}
args = map(args);
- return Type.TypeRef(prefix, symbol, args).unalias();
+ return Type.typeRef(prefix, symbol, args).unalias();
case SingleType(Type prefix, Symbol symbol):
// !!! prefix = apply(prefix);
// !!! symbol = prefix.rebind(symbol);
@@ -449,7 +450,7 @@ public class ExpandMixinsPhase extends Phase {
parents = Type.cloneArray(parents);
while (i < parents.length) {
if (!parents[i].symbol().isInterface())
- parents[i] = Type.TypeRef(parents[i].prefix(), (Symbol)interfaces.get(parents[i].symbol()), parents[i].typeArgs());
+ parents[i] = Type.typeRef(parents[i].prefix(), (Symbol)interfaces.get(parents[i].symbol()), parents[i].typeArgs());
i++;
}
return Type.compoundType(parents, members, clasz);