diff options
Diffstat (limited to 'tests/pending/run/t7214.scala')
-rw-r--r-- | tests/pending/run/t7214.scala | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/tests/pending/run/t7214.scala b/tests/pending/run/t7214.scala deleted file mode 100644 index d73fe6dd5..000000000 --- a/tests/pending/run/t7214.scala +++ /dev/null @@ -1,57 +0,0 @@ -// pattern matcher crashes here trying to synthesize an uneeded outer test. -// no-symbol does not have an owner -// at scala.reflect.internal.SymbolTable.abort(SymbolTable.scala:49) -// at scala.tools.nsc.Global.abort(Global.scala:253) -// at scala.reflect.internal.Symbols$NoSymbol.owner(Symbols.scala:3248) -// at scala.reflect.internal.Symbols$Symbol.effectiveOwner(Symbols.scala:678) -// at scala.reflect.internal.Symbols$Symbol.isDefinedInPackage(Symbols.scala:664) -// at scala.reflect.internal.TreeGen.mkAttributedSelect(TreeGen.scala:188) -// at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:124) -// at scala.tools.nsc.ast.TreeDSL$CODE$.REF(TreeDSL.scala:308) -// at scala.tools.nsc.typechecker.PatternMatching$TreeMakers$TypeTestTreeMaker$treeCondStrategy$.outerTest(PatternMatching.scala:1209) -class Crash { - type Alias = C#T - - val c = new C - val t = new c.T - - // Crash via a Typed Pattern... - (t: Any) match { - case e: Alias => - } - - // ... or via a Typed Extractor Pattern. - object Extractor { - def unapply(a: Alias): Option[Any] = None - } - (t: Any) match { - case Extractor(_) => - case _ => - } - - // checking that correct outer tests are applied when - // aliases for path dependent types are involved. - val c2 = new C - type CdotT = c.T - type C2dotT = c2.T - - val outerField = t.getClass.getDeclaredFields.find(_.getName contains ("outer")).get - outerField.setAccessible(true) - - (t: Any) match { - case _: C2dotT => - println(s"!!! wrong match. t.outer=${outerField.get(t)} / c2 = $c2") // this matches on 2.10.0 - case _: CdotT => - case _ => - println(s"!!! wrong match. t.outer=${outerField.get(t)} / c = $c") - } -} - -class C { - class T -} - -object Test extends dotty.runtime.LegacyApp { - new Crash -} - |