diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2013-01-26 17:05:11 +0100 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2013-01-26 17:07:33 +0100 |
commit | 8350cd947290a9a8beb3ff643a1e3dd2342a9182 (patch) | |
tree | 4040d32d562422de5aff0246305f5c12c36f183d /test/files/neg/t2968.scala | |
parent | 2fa859e1b3eb2ac57058feaba87d96adfbac9209 (diff) | |
download | scala-8350cd947290a9a8beb3ff643a1e3dd2342a9182.tar.gz scala-8350cd947290a9a8beb3ff643a1e3dd2342a9182.tar.bz2 scala-8350cd947290a9a8beb3ff643a1e3dd2342a9182.zip |
[backport] SI-2968 Fix brace healing for `^case (class|object) {`
Squashed commit of the following:
commit 24828531f62ce05402c96c04d7096e82d5f4e3bf
Author: Jason Zaugg <jzaugg@gmail.com>
Date: Sun Oct 21 23:34:35 2012 +0200
SI-2968 Fix brace healing for `^case (class|object) {`
The scanner coalesces the pair of tokens into CASEOBJECT or
CASECLASS, but fails to set `offset` back to the start of `case`.
Brace healing is then unable to correctly guess the location of
the missing brace.
This commit resets `offset` and `lastOffset`, as though
caseobject were a single keyword. Only the former was neccessary
to fix this bug; I haven't found a test that shows the need for
the latter.
(cherry picked from commit cbad218dba47d49a39897b86d467c384538fdd53)
Diffstat (limited to 'test/files/neg/t2968.scala')
-rw-r--r-- | test/files/neg/t2968.scala | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test/files/neg/t2968.scala b/test/files/neg/t2968.scala new file mode 100644 index 0000000000..41c3a798a5 --- /dev/null +++ b/test/files/neg/t2968.scala @@ -0,0 +1,26 @@ +object t1 { + case object Const { + } + + class Var + { + +} // missing brace + +object t2 { + case class Const() { + } + + class Var + { + +} // missing brace + +object t3 { + final case class Const() { + } + + class Var + { + +} // missing brace |