File tree Expand file tree Collapse file tree 2 files changed +13
-1
lines changed
compiler/src/dotty/tools/dotc/typer Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Original file line number Diff line number Diff line change @@ -668,7 +668,9 @@ class Typer(@constructorOnly nestingLevel: Int = 0) extends Namer
668668 if ctx.mode.is(Mode .Pattern )
669669 && ! tree.isType
670670 && ! pt.isInstanceOf [ApplyingProto ]
671- && ! tree.tpe.isStable
671+ && ! tree.tpe.match
672+ case tp : NamedType => tp.denot.hasAltWith(_.symbol.isStableMember && tp.prefix.isStable || tp.info.isStable)
673+ case tp => tp.isStable
672674 && ! isWildcardArg(tree)
673675 then
674676 report.error(StableIdentPattern (tree, pt), tree.srcPos)
Original file line number Diff line number Diff line change 1+ sealed trait Op
2+ object Op {
3+ case object `==` extends Op
4+ }
5+
6+ def t1 (a : Op ): true = {
7+ a match {
8+ case Op .`==` => true // was: won't compile
9+ }
10+ }
You can’t perform that action at this time.
0 commit comments