summaryrefslogtreecommitdiff
path: root/sources/scalac/typechecker/Infer.java
diff options
context:
space:
mode:
Diffstat (limited to 'sources/scalac/typechecker/Infer.java')
-rw-r--r--sources/scalac/typechecker/Infer.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/sources/scalac/typechecker/Infer.java b/sources/scalac/typechecker/Infer.java
index f413322284..d71677d58e 100644
--- a/sources/scalac/typechecker/Infer.java
+++ b/sources/scalac/typechecker/Infer.java
@@ -698,10 +698,13 @@ public class Infer implements Modifiers, Kinds {
public Tree mkTypeApply(Tree tree, Symbol[] tparams, Type restype, Type[] targs) {
Tree tree1 = tree;
Symbol sym = tree.symbol();
+ if (sym != null && sym.isCaseFactory())
+ sym = sym.type().resultType().symbol().constructor();
int i = 0;
while (i < tparams.length && tparams[i].owner() == sym)
i++;
if (i < tparams.length) {
+ //System.out.println("tpar " + tparams[i] + " of " + tparams[i].owner() + " <> " + sym);//DEBUG
//new Printer().print(tree1);//DEBUG
//System.out.println(ArrayApply.toString(targs) + "/" + i + "/" + ArrayApply.toString(tparams));//DEBUG
Symbol[] tparams1 = new Symbol[tparams.length - i];