From 78287b12cc6ff6aa4acf2b95c2dfa741f0d5f869 Mon Sep 17 00:00:00 2001 From: Albert Meltzer <7529386+kitbellew@users.noreply.github.com> Date: Sun, 28 May 2023 20:53:26 -0700 Subject: [PATCH] ScalametaParser: constrain NL before block in arg Turns out it's only in scala2 and only after parens. --- .../scala/scala/meta/internal/parsers/ScalametaParser.scala | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scalameta/parsers/shared/src/main/scala/scala/meta/internal/parsers/ScalametaParser.scala b/scalameta/parsers/shared/src/main/scala/scala/meta/internal/parsers/ScalametaParser.scala index a660c9a44f..33e76bfe54 100644 --- a/scalameta/parsers/shared/src/main/scala/scala/meta/internal/parsers/ScalametaParser.scala +++ b/scalameta/parsers/shared/src/main/scala/scala/meta/internal/parsers/ScalametaParser.scala @@ -2312,7 +2312,10 @@ class ScalametaParser(input: Input)(implicit dialect: Dialect) { parser => } token match { case _: Dot | _: OpenDelim | _: Underscore => getRest() - case _: LF if peekToken.is[LeftBrace] => next(); getRest() + // see ArgumentExprs in: + // https://scala-lang.org/files/archive/spec/2.13/13-syntax-summary.html#context-free-syntax + case _: LF if !isBrace && !dialect.allowSignificantIndentation && tryAhead[LeftBrace] => + getRest() case _ => makeTupleTerm { arg => val res = maybeAnonymousFunction(arg)