diff --git a/scalafmt-core/shared/src/main/scala/org/scalafmt/internal/Router.scala b/scalafmt-core/shared/src/main/scala/org/scalafmt/internal/Router.scala index 77ffd5831..0dab424b3 100644 --- a/scalafmt-core/shared/src/main/scala/org/scalafmt/internal/Router.scala +++ b/scalafmt-core/shared/src/main/scala/org/scalafmt/internal/Router.scala @@ -950,10 +950,16 @@ class Router(formatOps: FormatOps) { ) } - case FT(T.LeftParen(), T.RightParen(), _) => + case FT(_: T.LeftParen, _: T.RightParen, _) => val noNL = style.newlines.sourceIgnored || noBreak() Seq(Split(NoSplit.orNL(noNL), 0)) + case FT(_: T.LeftParen, _: T.Comment, _) if (leftOwner match { + case _: Lit.Unit => true + case t: Member.ArgClause => t.values.isEmpty + case _ => false + }) && !hasBreakBeforeNonComment(ft) => Seq(Split(Space, 0)) + case FT(open @ LeftParenOrBracket(), right, _) if { if (isArgClauseSite(leftOwner)) style.binPack.callSiteFor(open) == BinPack.Site.Never diff --git a/scalafmt-tests/shared/src/test/scala/org/scalafmt/FormatTests.scala b/scalafmt-tests/shared/src/test/scala/org/scalafmt/FormatTests.scala index 285264e3c..ff96c1fd5 100644 --- a/scalafmt-tests/shared/src/test/scala/org/scalafmt/FormatTests.scala +++ b/scalafmt-tests/shared/src/test/scala/org/scalafmt/FormatTests.scala @@ -137,7 +137,7 @@ class FormatTests extends FunSuite with CanRunTests with FormatAssertions { val explored = Debug.explored.get() logger.debug(s"Total explored: $explored") if (!onlyUnit && !onlyManual) - assertEquals(explored, 1082952, "total explored") + assertEquals(explored, 1082944, "total explored") val results = debugResults.result() // TODO(olafur) don't block printing out test results. // I don't want to deal with scalaz's Tasks :'(