forked from OSchip/llvm-project
clang-format: Fix incorrect space in parameters named by comment.
This fixes llvm.org/PR17979. Before: void f() { g(/*aaa=*/x, /*bbb=*/ !y); } After: void f() { g(/*aaa=*/x, /*bbb=*/!y); } llvm-svn: 195553
This commit is contained in:
parent
446d1cd32c
commit
40bc7466a8
|
@ -1303,6 +1303,8 @@ bool TokenAnnotator::spaceRequiredBetween(const AnnotatedLine &Line,
|
|||
return !Left.Children.empty(); // No spaces in "{}".
|
||||
if (Left.is(tok::l_brace) || Right.is(tok::r_brace))
|
||||
return !Style.Cpp11BracedListStyle;
|
||||
if (Left.Type == TT_BlockComment && Left.TokenText.endswith("=*/"))
|
||||
return false;
|
||||
if (Right.Type == TT_UnaryOperator)
|
||||
return !Left.isOneOf(tok::l_paren, tok::l_square, tok::at) &&
|
||||
(Left.isNot(tok::colon) || Left.Type != TT_ObjCMethodExpr);
|
||||
|
@ -1312,8 +1314,6 @@ bool TokenAnnotator::spaceRequiredBetween(const AnnotatedLine &Line,
|
|||
return false;
|
||||
if (Left.is(tok::period) || Right.is(tok::period))
|
||||
return false;
|
||||
if (Left.Type == TT_BlockComment && Left.TokenText.endswith("=*/"))
|
||||
return false;
|
||||
if (Right.is(tok::hash) && Left.is(tok::identifier) && Left.TokenText == "L")
|
||||
return false;
|
||||
return true;
|
||||
|
|
|
@ -842,6 +842,7 @@ TEST_F(FormatTest, RemovesTrailingWhitespaceOfComments) {
|
|||
|
||||
TEST_F(FormatTest, UnderstandsBlockComments) {
|
||||
verifyFormat("f(/*noSpaceAfterParameterNamingComment=*/true);");
|
||||
verifyFormat("void f() { g(/*aaa=*/x, /*bbb=*/!y); }");
|
||||
EXPECT_EQ(
|
||||
"f(aaaaaaaaaaaaaaaaaaaaaaaaa, /* Trailing comment for aa... */\n"
|
||||
" bbbbbbbbbbbbbbbbbbbbbbbbb);",
|
||||
|
|
Loading…
Reference in New Issue