diff options
author | Paul Phillips <paulp@improving.org> | 2012-08-08 05:29:43 -0700 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2012-08-08 09:43:29 -0700 |
commit | 802771b403f6dd0f09e01e4e3e1189c70d4b7bec (patch) | |
tree | abf4ddbc39c1bafc2b042748c6be4de18bee85a7 /test/files/neg/t6048.check | |
parent | 7d3b2de7b52fec492bc63296d5adf076f68faf0a (diff) | |
download | scala-802771b403f6dd0f09e01e4e3e1189c70d4b7bec.tar.gz scala-802771b403f6dd0f09e01e4e3e1189c70d4b7bec.tar.bz2 scala-802771b403f6dd0f09e01e4e3e1189c70d4b7bec.zip |
Better pattern matcher error message.
For the common case when someone hasn't quite grokked
the significance of lower case in a pattern match. I'd
like to make all the unreachables errors, not warnings,
but there may be a bug or two to clear out first.
class A {
def badEquals(x: Any, y: Any) = x match {
case y => true
case _ => false
}
}
a.scala:3: warning: patterns after a variable pattern cannot match (SLS 8.1.1)
If you intended to match against parameter y of method badEquals, you must use backticks, like: case `y` =>
case y => true
^
a.scala:4: warning: unreachable code due to variable pattern 'y' on line 3
case _ => false
^
two warnings found
Diffstat (limited to 'test/files/neg/t6048.check')
-rw-r--r-- | test/files/neg/t6048.check | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/test/files/neg/t6048.check b/test/files/neg/t6048.check index 051f41877e..5bdf2eca88 100644 --- a/test/files/neg/t6048.check +++ b/test/files/neg/t6048.check @@ -4,7 +4,10 @@ t6048.scala:3: error: unreachable code t6048.scala:8: error: unreachable code case _ if false => x // unreachable ^ -t6048.scala:14: error: unreachable code +t6048.scala:13: error: patterns after a variable pattern cannot match (SLS 8.1.1) + case _ => x + ^ +t6048.scala:14: error: unreachable code due to variable pattern on line 13 case 5 if true => x // unreachable ^ -three errors found +four errors found |