diff options
-rw-r--r-- | lib/Format/UnwrappedLineParser.cpp | 5 | ||||
-rw-r--r-- | unittests/Format/FormatTestJava.cpp | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/lib/Format/UnwrappedLineParser.cpp b/lib/Format/UnwrappedLineParser.cpp index 6ff5405a1b..02d49a0e1e 100644 --- a/lib/Format/UnwrappedLineParser.cpp +++ b/lib/Format/UnwrappedLineParser.cpp @@ -1033,6 +1033,8 @@ void UnwrappedLineParser::parseParens() { switch (FormatTok->Tok.getKind()) { case tok::l_paren: parseParens(); + if (Style.Language == FormatStyle::LK_Java && FormatTok->is(tok::l_brace)) + parseChildBlock(); break; case tok::r_paren: nextToken(); @@ -1043,12 +1045,11 @@ void UnwrappedLineParser::parseParens() { case tok::l_square: tryToParseLambda(); break; - case tok::l_brace: { + case tok::l_brace: if (!tryToParseBracedList()) { parseChildBlock(); } break; - } case tok::at: nextToken(); if (FormatTok->Tok.is(tok::l_brace)) diff --git a/unittests/Format/FormatTestJava.cpp b/unittests/Format/FormatTestJava.cpp index b4f67afd9b..e27e462ae7 100644 --- a/unittests/Format/FormatTestJava.cpp +++ b/unittests/Format/FormatTestJava.cpp @@ -387,6 +387,11 @@ TEST_F(FormatTestJava, FormatsInnerBlocks) { " System.out.println(42);\n" " }\n" "}, someOtherParameter);"); + verifyFormat("someFunction(new Runnable() {\n" + " public void run() {\n" + " System.out.println(42);\n" + " }\n" + "});"); verifyFormat("someObject.someFunction(\n" " new Runnable() {\n" " @Override\n" |