aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/parsing
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2016-03-04 11:43:57 +0100
committerMartin Odersky <odersky@gmail.com>2016-03-12 16:08:36 +0100
commitc43ae4a31cac6363050ab07aa6ec1a9f0e9213b4 (patch)
treea919e11248ea3f62155a70b6aa12ab701a82a083 /src/dotty/tools/dotc/parsing
parente68d68414fa346fad9dee204746d826ee172e861 (diff)
downloaddotty-c43ae4a31cac6363050ab07aa6ec1a9f0e9213b4.tar.gz
dotty-c43ae4a31cac6363050ab07aa6ec1a9f0e9213b4.tar.bz2
dotty-c43ae4a31cac6363050ab07aa6ec1a9f0e9213b4.zip
Add patching functionality for migration
Firs version of patching that can be invoked by dotty compiler itself.
Diffstat (limited to 'src/dotty/tools/dotc/parsing')
-rw-r--r--src/dotty/tools/dotc/parsing/Parsers.scala7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/parsing/Parsers.scala b/src/dotty/tools/dotc/parsing/Parsers.scala
index bb8fbe08b..47b0ae22d 100644
--- a/src/dotty/tools/dotc/parsing/Parsers.scala
+++ b/src/dotty/tools/dotc/parsing/Parsers.scala
@@ -21,6 +21,7 @@ import Constants._
import ScriptParsers._
import annotation.switch
import util.DotClass
+import rewrite.Patches.patch
object Parsers {
@@ -1762,7 +1763,11 @@ object Parsers {
*/
def defDefOrDcl(mods: Modifiers): Tree = atPos(tokenRange) {
def scala2ProcedureSyntax =
- testScala2Mode("Procedure syntax no longer supported; `: Unit =' should be inserted here")
+ testScala2Mode("Procedure syntax no longer supported; `: Unit =' should be inserted here") && {
+ patch(source, Position(in.lastOffset),
+ if (in.token == LBRACE) ": Unit =" else ": Unit ")
+ true
+ }
if (in.token == THIS) {
in.nextToken()
val vparamss = paramClauses(nme.CONSTRUCTOR)