summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2015-06-04 13:04:05 +1000
committerJason Zaugg <jzaugg@gmail.com>2015-06-04 13:04:05 +1000
commit0bc7fa67d130f75079df79814b33ef073254e27a (patch)
tree3c4f04bad8624e8ded8155ffd87d8028d5d5f9a7 /src
parent70f0b1ded880ec9b3a9478d02f1898fcfeee230c (diff)
parent79436caa98ba46de644841a67ea9ff103831e574 (diff)
downloadscala-0bc7fa67d130f75079df79814b33ef073254e27a.tar.gz
scala-0bc7fa67d130f75079df79814b33ef073254e27a.tar.bz2
scala-0bc7fa67d130f75079df79814b33ef073254e27a.zip
Merge pull request #4537 from som-snytt/issue/xml-unapply
SI-9343 Xlint less strict on pattern sequences
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/transform/patmat/ScalacPatternExpanders.scala6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/patmat/ScalacPatternExpanders.scala b/src/compiler/scala/tools/nsc/transform/patmat/ScalacPatternExpanders.scala
index 2753baa51d..b1783dc81f 100644
--- a/src/compiler/scala/tools/nsc/transform/patmat/ScalacPatternExpanders.scala
+++ b/src/compiler/scala/tools/nsc/transform/patmat/ScalacPatternExpanders.scala
@@ -112,8 +112,10 @@ trait ScalacPatternExpanders {
arityError("not enough")
else if (elementArity > 0 && !isSeq)
arityError("too many")
- else if (settings.warnStarsAlign && isSeq && productArity > 0 && (elementArity > 0 || !isStar))
- warn("A repeated case parameter or extracted sequence should be matched only by a sequence wildcard (_*).")
+ else if (settings.warnStarsAlign && isSeq && productArity > 0 && elementArity > 0) warn {
+ if (isStar) "Sequence wildcard (_*) does not align with repeated case parameter or extracted sequence; the result may be unexpected."
+ else "A repeated case parameter or extracted sequence is not matched by a sequence wildcard (_*), and may fail at runtime."
+ }
aligned
}