r182362 - Allow breaking before a trailing const.

Richard Smith richard at metafoo.co.uk
Tue May 21 12:36:04 PDT 2013


On Tue, May 21, 2013 at 12:08 PM, Daniel Jasper <djasper at google.com> wrote:

> Not sure where you are getting your data from,
>

>From grep, with the regexps I provided.


> but e.g. ASTContext.h alone has 4 such cases.
>

Right. There is only one other in all of include/clang. And the ones in
ASTContext.h all look ugly.


> On Tue, May 21, 2013 at 9:05 PM, Richard Smith <richard at metafoo.co.uk>wrote:
>
>> More data:
>>
>> /^ *const;/ has 12 matches in llvm/lib and 0 in clang/lib
>> /^ *[^(,]*) const;/ has 769 matches in llvm/lib and 221 matches in
>> clang/lib
>>
>> /^ *const {/ has 108 matches in llvm/lib + 2 in include/llvm, 6 matches
>> in clang/lib + 1 in include/clang
>> /^ *[^(,]*) const {/ has 1371 matches in llvm/lib + 208 in include/llvm,
>> 743 matches in clang/lib + 73 in include/clang
>>
>>
>> On Tue, May 21, 2013 at 12:01 PM, Richard Smith <richard at metafoo.co.uk>wrote:
>>
>>> We should probably turn this off for LLVM style:
>>>
>>> /^ *const;/ has only 1 match in include/llvm and 5 matches in
>>> include/clang.
>>> /^ *[^(,]*) const;/ has 251 matches in include/llvm and 191 matches in
>>> include/clang.
>>>
>>>
>>> On Tue, May 21, 2013 at 2:16 AM, Daniel Jasper <djasper at google.com>wrote:
>>>
>>>> Author: djasper
>>>> Date: Tue May 21 04:16:31 2013
>>>> New Revision: 182362
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-project?rev=182362&view=rev
>>>> Log:
>>>> Allow breaking before a trailing const.
>>>>
>>>> Before:
>>>> void someLongFunction(
>>>>     int someLongParameter) const;
>>>>
>>>> After:
>>>> void someLongFunction(int someLongParameter)
>>>>     const;
>>>>
>>>> Also slightly cleanup tests.
>>>>
>>>> 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=182362&r1=182361&r2=182362&view=diff
>>>>
>>>> ==============================================================================
>>>> --- cfe/trunk/lib/Format/TokenAnnotator.cpp (original)
>>>> +++ cfe/trunk/lib/Format/TokenAnnotator.cpp Tue May 21 04:16:31 2013
>>>> @@ -1187,7 +1187,7 @@ bool TokenAnnotator::canBreakBefore(cons
>>>>                        tok::kw_class, tok::kw_struct) ||
>>>>           Right.isOneOf(tok::lessless, tok::arrow, tok::period,
>>>> tok::colon) ||
>>>>           (Left.is(tok::r_paren) && Left.Type != TT_CastRParen &&
>>>> -          Right.isOneOf(tok::identifier, tok::kw___attribute)) ||
>>>> +          Right.isOneOf(tok::identifier, tok::kw_const,
>>>> tok::kw___attribute)) ||
>>>>           (Left.is(tok::l_paren) && !Right.is(tok::r_paren)) ||
>>>>           (Left.is(tok::l_square) && !Right.is(tok::r_square));
>>>>  }
>>>>
>>>> Modified: cfe/trunk/unittests/Format/FormatTest.cpp
>>>> URL:
>>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTest.cpp?rev=182362&r1=182361&r2=182362&view=diff
>>>>
>>>> ==============================================================================
>>>> --- cfe/trunk/unittests/Format/FormatTest.cpp (original)
>>>> +++ cfe/trunk/unittests/Format/FormatTest.cpp Tue May 21 04:16:31 2013
>>>> @@ -1628,12 +1628,6 @@ TEST_F(FormatTest, PutEmptyBlocksIntoOne
>>>>  // Line break tests.
>>>>
>>>>  //===----------------------------------------------------------------------===//
>>>>
>>>> -TEST_F(FormatTest, FormatsFunctionDefinition) {
>>>> -  verifyFormat("void f(int a, int b, int c, int d, int e, int f, int
>>>> g,"
>>>> -               " int h, int j, int f,\n"
>>>> -               "       int c, int ddddddddddddd) {}");
>>>> -}
>>>> -
>>>>  TEST_F(FormatTest, FormatsAwesomeMethodCall) {
>>>>    verifyFormat(
>>>>
>>>>  "SomeLongMethodName(SomeReallyLongMethod(CallOtherReallyLongMethod(\n"
>>>> @@ -1914,6 +1908,30 @@ TEST_F(FormatTest, BreaksFunctionDeclara
>>>>                 "    bbbb bbbb);");
>>>>  }
>>>>
>>>> +TEST_F(FormatTest, BreaksFunctionDeclarationsWithTrailingTokens) {
>>>> +  verifyFormat("void someLongFunction(int someLongParameter)\n"
>>>> +               "    const;",
>>>> +               getLLVMStyleWithColumns(45));
>>>> +
>>>> +  verifyFormat("void aaaaaaaaaaaa(int
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)\n"
>>>> +               "    LOCKS_EXCLUDED(aaaaaaaaaaaaa);");
>>>> +  verifyFormat("void aaaaaaaaaaaa(int
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) const\n"
>>>> +               "    LOCKS_EXCLUDED(aaaaaaaaaaaaa);");
>>>> +  verifyFormat("void aaaaaaaaaaaa(int
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) const\n"
>>>> +               "    LOCKS_EXCLUDED(aaaaaaaaaaaaa) {}");
>>>> +
>>>> +  verifyFormat(
>>>> +      "void aaaaaaaaaaaaaaaaaa()\n"
>>>> +      "    __attribute__((aaaaaaaaaaaaaaaaaaaaaaaaa,
>>>> aaaaaaaaaaaaaaaaaaaaaaa,\n"
>>>> +      "                   aaaaaaaaaaaaaaaaaaaaaaaaa));");
>>>> +  verifyFormat("bool
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n"
>>>> +               "    __attribute__((unused));");
>>>> +  verifyFormat(
>>>> +      "bool aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n"
>>>> +      "    GUARDED_BY(aaaaaaaaaaaa);");
>>>> +}
>>>> +
>>>> +
>>>>  TEST_F(FormatTest, BreaksDesireably) {
>>>>    verifyFormat("if (aaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaa) ||\n"
>>>>                 "    aaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaa) ||\n"
>>>> @@ -2051,24 +2069,6 @@ TEST_F(FormatTest, FormatsBuilderPattern
>>>>        "    ->aaaaaaaaaaaaaaaaa();");
>>>>  }
>>>>
>>>> -TEST_F(FormatTest, DoesNotBreakTrailingAnnotation) {
>>>> -  verifyFormat("void aaaaaaaaaaaa(int
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)\n"
>>>> -               "    LOCKS_EXCLUDED(aaaaaaaaaaaaa);");
>>>> -  verifyFormat("void aaaaaaaaaaaa(int
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) const\n"
>>>> -               "    LOCKS_EXCLUDED(aaaaaaaaaaaaa);");
>>>> -  verifyFormat("void aaaaaaaaaaaa(int
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) const\n"
>>>> -               "    LOCKS_EXCLUDED(aaaaaaaaaaaaa) {}");
>>>> -  verifyFormat(
>>>> -      "void aaaaaaaaaaaaaaaaaa()\n"
>>>> -      "    __attribute__((aaaaaaaaaaaaaaaaaaaaaaaaa,
>>>> aaaaaaaaaaaaaaaaaaaaaaa,\n"
>>>> -      "                   aaaaaaaaaaaaaaaaaaaaaaaaa));");
>>>> -  verifyFormat("bool
>>>> aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n"
>>>> -               "    __attribute__((unused));");
>>>> -  verifyFormat(
>>>> -      "bool aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n"
>>>> -      "    GUARDED_BY(aaaaaaaaaaaa);");
>>>> -}
>>>> -
>>>>  TEST_F(FormatTest, BreaksAccordingToOperatorPrecedence) {
>>>>    verifyFormat(
>>>>        "if (aaaaaaaaaaaaaaaaaaaaaaaaa ||\n"
>>>>
>>>>
>>>> _______________________________________________
>>>> cfe-commits mailing list
>>>> cfe-commits at cs.uiuc.edu
>>>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130521/237bea62/attachment.html>


More information about the cfe-commits mailing list