r214069 - clang-format: Fix formatting of lock annotations in lambda definitions.

Daniel Jasper djasper at google.com
Mon Jul 28 05:08:06 PDT 2014


Author: djasper
Date: Mon Jul 28 07:08:06 2014
New Revision: 214069

URL: http://llvm.org/viewvc/llvm-project?rev=214069&view=rev
Log:
clang-format: Fix formatting of lock annotations in lambda definitions.

Before:
  SomeFunction([](int i)LOCKS_EXCLUDED(a) {});

After:
  SomeFunction([](int i) LOCKS_EXCLUDED(a) {});

Modified:
    cfe/trunk/lib/Format/TokenAnnotator.cpp
    cfe/trunk/unittests/Format/FormatTest.cpp

Modified: cfe/trunk/lib/Format/TokenAnnotator.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Format/TokenAnnotator.cpp?rev=214069&r1=214068&r2=214069&view=diff
==============================================================================
--- cfe/trunk/lib/Format/TokenAnnotator.cpp (original)
+++ cfe/trunk/lib/Format/TokenAnnotator.cpp Mon Jul 28 07:08:06 2014
@@ -842,6 +842,10 @@ private:
       LeftOfParens = Tok.MatchingParen->getPreviousNonComment();
     if (LeftOfParens && LeftOfParens->is(tok::r_paren))
       return false;
+    if (LeftOfParens && LeftOfParens->is(tok::r_square) &&
+        LeftOfParens->MatchingParen &&
+        LeftOfParens->MatchingParen->Type == TT_LambdaLSquare)
+      return false;
     bool IsCast = false;
     bool ParensAreEmpty = Tok.Previous == Tok.MatchingParen;
     bool ParensAreType = !Tok.Previous ||

Modified: cfe/trunk/unittests/Format/FormatTest.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTest.cpp?rev=214069&r1=214068&r2=214069&view=diff
==============================================================================
--- cfe/trunk/unittests/Format/FormatTest.cpp (original)
+++ cfe/trunk/unittests/Format/FormatTest.cpp Mon Jul 28 07:08:06 2014
@@ -3513,6 +3513,7 @@ TEST_F(FormatTest, BreaksFunctionDeclara
                "    LOCKS_EXCLUDED(aaaaaaaaaaaaa) {}");
   verifyGoogleFormat("void aaaaaaaaaaaaaa(aaaaaaaa aaa) override\n"
                      "    AAAAAAAAAAAAAAAAAAAAAAAA(aaaaaaaaaaaaaaa);");
+  verifyFormat("SomeFunction([](int i) LOCKS_EXCLUDED(a) {});");
 
   verifyFormat(
       "void aaaaaaaaaaaaaaaaaa()\n"





More information about the cfe-commits mailing list