From: Daniel Jasper Date: Tue, 28 Feb 2017 18:28:15 +0000 (+0000) Subject: clang-format: [Java] Fix bug in enum formatting. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=445111c2dcede05df8701739a9ce281ff0888517;p=clang clang-format: [Java] Fix bug in enum formatting. Before: public enum VeryLongEnum { ENUM_WITH_MANY_PARAMETERS("aaaaaaaaaaaaaaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbbbbbbb", "ccccccccccccccccccc") , SECOND_ENUM("a", "b", "c"); private VeryLongEnum(String a, String b, String c) {} } After: public enum VeryLongEnum { ENUM_WITH_MANY_PARAMETERS("aaaaaaaaaaaaaaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbbbbbbb", "ccccccccccccccccccc") , SECOND_ENUM("a", "b", "c"); private VeryLongEnum(String a, String b, String c) {} } git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@296499 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Format/TokenAnnotator.cpp b/lib/Format/TokenAnnotator.cpp index b3dc314dba..907e173c9e 100644 --- a/lib/Format/TokenAnnotator.cpp +++ b/lib/Format/TokenAnnotator.cpp @@ -1083,7 +1083,8 @@ private: if (Current.MatchingParen && Current.Next && !Current.Next->isBinaryOperator() && !Current.Next->isOneOf(tok::semi, tok::colon, tok::l_brace, - tok::period, tok::arrow, tok::coloncolon)) + tok::comma, tok::period, tok::arrow, + tok::coloncolon)) if (FormatToken *AfterParen = Current.MatchingParen->Next) { // Make sure this isn't the return type of an Obj-C block declaration if (AfterParen->Tok.isNot(tok::caret)) { diff --git a/unittests/Format/FormatTestJava.cpp b/unittests/Format/FormatTestJava.cpp index dfc3debc46..ee09ca940f 100644 --- a/unittests/Format/FormatTestJava.cpp +++ b/unittests/Format/FormatTestJava.cpp @@ -225,6 +225,13 @@ TEST_F(FormatTestJava, EnumDeclarations) { " }\n" " };\n" "}"); + verifyFormat("public enum VeryLongEnum {\n" + " ENUM_WITH_MANY_PARAMETERS(\n" + " \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"bbbbbbbbbbbbbbbb\", " + "\"cccccccccccccccccccccccc\"),\n" + " SECOND_ENUM(\"a\", \"b\", \"c\");\n" + " private VeryLongEnum(String a, String b, String c) {}\n" + "}\n"); } TEST_F(FormatTestJava, ArrayInitializers) {