summaryrefslogtreecommitdiff
path: root/src/compiler
diff options
context:
space:
mode:
authorDale Wijnand <dale.wijnand@gmail.com>2017-01-08 17:45:33 +0000
committerDale Wijnand <dale.wijnand@gmail.com>2017-01-08 17:50:52 +0000
commitd55bad83108d030ef214d4a2477df66fffbbb8f5 (patch)
treed9bb75d235a8fa7eca826c7410f76a2df4b2a37e /src/compiler
parentc95e6bb6ae3693be016a89b7aa4dc19a24fe363d (diff)
downloadscala-d55bad83108d030ef214d4a2477df66fffbbb8f5.tar.gz
scala-d55bad83108d030ef214d4a2477df66fffbbb8f5.tar.bz2
scala-d55bad83108d030ef214d4a2477df66fffbbb8f5.zip
SIP-27 Tweak and test wildstar in REPL
From https://github.com/scala/scala/pull/5245#issuecomment-266658070
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/scala/tools/nsc/ast/parser/Scanners.scala7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/parser/Scanners.scala b/src/compiler/scala/tools/nsc/ast/parser/Scanners.scala
index 9862340c04..99713451ac 100644
--- a/src/compiler/scala/tools/nsc/ast/parser/Scanners.scala
+++ b/src/compiler/scala/tools/nsc/ast/parser/Scanners.scala
@@ -392,8 +392,11 @@ trait Scanners extends ScannersCommon {
// then it is a trailing comma and is ignored
val saved = new ScannerData {} copyFrom this
fetchToken()
- if (token != RPAREN && token != RBRACKET && token != RBRACE || !afterLineEnd())
- this copyFrom saved
+ if (afterLineEnd() && (token == RPAREN || token == RBRACKET || token == RBRACE)) {
+ /* skip the trailing comma */
+ } else if (token == EOF) { // e.g. when the REPL is parsing "val List(x, y, _*,"
+ /* skip the trailing comma */
+ } else this copyFrom saved
}
// print("["+this+"]")