From: Daniel Jasper Date: Tue, 21 Oct 2014 10:02:03 +0000 (+0000) Subject: clang-format: [Java] Make annotation formatting more consistent. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4212c76ce10f9b17664e71f286f9cf93fec9b244;p=clang clang-format: [Java] Make annotation formatting more consistent. Before: DoSomething(new A() { @Override public String toString() { } }); After: DoSomething(new A() { @Override public String toString() { } }); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@220282 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Format/TokenAnnotator.cpp b/lib/Format/TokenAnnotator.cpp index 4493471d21..ba08ace1e8 100644 --- a/lib/Format/TokenAnnotator.cpp +++ b/lib/Format/TokenAnnotator.cpp @@ -1797,7 +1797,7 @@ bool TokenAnnotator::mustBreakBefore(const AnnotatedLine &Line, return true; } else if (Style.Language == FormatStyle::LK_Java) { if (Left.Type == TT_JavaAnnotation && Right.isNot(tok::l_paren) && - Line.MightBeFunctionDecl) + Line.Last->is(tok::l_brace)) return true; } diff --git a/unittests/Format/FormatTestJava.cpp b/unittests/Format/FormatTestJava.cpp index 49c95a8753..00809bea91 100644 --- a/unittests/Format/FormatTestJava.cpp +++ b/unittests/Format/FormatTestJava.cpp @@ -75,6 +75,12 @@ TEST_F(FormatTestJava, Annotations) { verifyFormat("@SuppressWarnings(value = \"unchecked\")\n" "public void doSomething() {\n}"); + verifyFormat("DoSomething(new A() {\n" + " @Override\n" + " public String toString() {\n" + " }\n" + "});"); + verifyFormat("@Partial @Mock DataLoader loader;"); }