From bb3efab1d5406257582a3f8c02c814643e4626b9 Mon Sep 17 00:00:00 2001 From: Sarunas Valaskevicius Date: Thu, 24 Sep 2015 20:11:10 +0100 Subject: [PATCH 1/2] fix compiling ScalaRunTime.scala --- src/dotty/tools/dotc/typer/Typer.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dotty/tools/dotc/typer/Typer.scala b/src/dotty/tools/dotc/typer/Typer.scala index a3c64f526379..b28ac9bc5f8e 100644 --- a/src/dotty/tools/dotc/typer/Typer.scala +++ b/src/dotty/tools/dotc/typer/Typer.scala @@ -826,7 +826,7 @@ class Typer extends Namer with TypeAssigner with Applications with Implicits wit } def typedAppliedTypeTree(tree: untpd.AppliedTypeTree)(implicit ctx: Context): Tree = track("typedAppliedTypeTree") { - val tpt1 = typed(tree.tpt) + val tpt1 = typed(tree.tpt)(ctx retractMode Mode.Pattern) val tparams = tpt1.tpe.typeParams var args = tree.args if (tparams.isEmpty) { From 1c131d55bbaed78ee646679e151cb0e792bfa508 Mon Sep 17 00:00:00 2001 From: Sarunas Valaskevicius Date: Fri, 25 Sep 2015 16:04:20 +0100 Subject: [PATCH 2/2] add a test for a pattern match with ignored type param --- tests/pos/Patterns.scala | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/pos/Patterns.scala b/tests/pos/Patterns.scala index e9bce87a933e..aa369a77bce2 100644 --- a/tests/pos/Patterns.scala +++ b/tests/pos/Patterns.scala @@ -93,6 +93,15 @@ object Patterns { case t: a2.B => t } + + class caseWithPatternVariableHelper1[A] + class caseWithPatternVariableHelper2[A] + + def caseWithPatternVariable(x: Any) = x match { + case a: caseWithPatternVariableHelper1[_] => () + case b: caseWithPatternVariableHelper2[_] => () + } + } object NestedPattern {