diff options
Diffstat (limited to 'sources/scalac/typechecker/Infer.java')
-rw-r--r-- | sources/scalac/typechecker/Infer.java | 3 |
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]; |