summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2009-02-10 17:51:32 +0000
committerPaul Phillips <paulp@improving.org>2009-02-10 17:51:32 +0000
commit8d017c0f1e3478f2736a8df624492b73190b0976 (patch)
tree53576dda6521a9c96573f983e00dcd4ab4977adc
parent7681434a9278f50b673880e9a2ede4c1d57a679d (diff)
downloadscala-8d017c0f1e3478f2736a8df624492b73190b0976.tar.gz
scala-8d017c0f1e3478f2736a8df624492b73190b0976.tar.bz2
scala-8d017c0f1e3478f2736a8df624492b73190b0976.zip
Removes underscore from the list of characters ...
Removes underscore from the list of characters used during semicolon inference which it believes cannot start a statement on a new line, fixing bug #756; adds 1 test case, updates 1.
-rw-r--r--src/compiler/scala/tools/nsc/ast/parser/NewScanners.scala2
-rw-r--r--test/files/neg/bug1181.check2
-rw-r--r--test/files/pos/bug756.scala6
3 files changed, 8 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/parser/NewScanners.scala b/src/compiler/scala/tools/nsc/ast/parser/NewScanners.scala
index ec5354c507..dfb0d2878f 100644
--- a/src/compiler/scala/tools/nsc/ast/parser/NewScanners.scala
+++ b/src/compiler/scala/tools/nsc/ast/parser/NewScanners.scala
@@ -717,7 +717,7 @@ trait NewScanners {
}
def inFirstOfStat(token: Int) = token match {
case EOF | /*CASE |*/ CATCH | ELSE | EXTENDS | FINALLY | MATCH | REQUIRES | WITH | YIELD |
- COMMA | SEMI | NEWLINE | NEWLINES | DOT | USCORE | COLON | EQUALS | ARROW |
+ COMMA | SEMI | NEWLINE | NEWLINES | DOT | COLON | EQUALS | ARROW | /* | USCORE - bug #756 */
LARROW | SUBTYPE | VIEWBOUND | SUPERTYPE | HASH | // todo: add LBRACKET
RPAREN | RBRACKET | RBRACE => false
case _ => true
diff --git a/test/files/neg/bug1181.check b/test/files/neg/bug1181.check
index 0baf975f9b..38045eda87 100644
--- a/test/files/neg/bug1181.check
+++ b/test/files/neg/bug1181.check
@@ -1,4 +1,4 @@
-bug1181.scala:9: error: not a legal formal parameter
+bug1181.scala:9: error: missing parameter type
_ => buildMap(map.update(keyList.head, valueList.head), keyList.tail, valueList.tail)
^
one error found
diff --git a/test/files/pos/bug756.scala b/test/files/pos/bug756.scala
new file mode 100644
index 0000000000..09735695f8
--- /dev/null
+++ b/test/files/pos/bug756.scala
@@ -0,0 +1,6 @@
+object test {
+ for {
+ n <- Some(42)
+ _ <- Some(24)
+ } yield n
+} \ No newline at end of file