forked from OSchip/llvm-project
Remove errors were if statements were incorrectly put on a single line.
Before: if (a) // This comment confused clang-format f(); After: if (a) // No more confusion f(); llvm-svn: 172600
This commit is contained in:
parent
6a9355f8d7
commit
c36492b598
|
@ -1480,6 +1480,11 @@ private:
|
|||
unsigned Length = 0;
|
||||
if (!fitsIntoLimit(I->First, Limit, &Length))
|
||||
return false;
|
||||
|
||||
// We can never merge stuff if there are trailing line comments.
|
||||
if (I->Last->Type == TT_LineComment)
|
||||
return true;
|
||||
|
||||
if (Limit == Length)
|
||||
return true; // Couldn't fit a space.
|
||||
Limit -= Length + 1; // One space.
|
||||
|
@ -1516,6 +1521,8 @@ private:
|
|||
if (!Style.AllowShortIfStatementsOnASingleLine)
|
||||
return;
|
||||
AnnotatedLine &Line = *I;
|
||||
if (Line.Last->isNot(tok::r_paren))
|
||||
return;
|
||||
if (!fitsIntoLimit((I + 1)->First, Limit))
|
||||
return;
|
||||
if ((I + 1)->First.is(tok::kw_if) || (I + 1)->First.Type == TT_LineComment)
|
||||
|
|
|
@ -145,7 +145,17 @@ TEST_F(FormatTest, FormatIfWithoutCompountStatement) {
|
|||
verifyFormat("if (a) return;", getGoogleStyleWithColumns(14));
|
||||
verifyFormat("if (a)\n return;", getGoogleStyleWithColumns(13));
|
||||
verifyFormat("if (aaaaaaaaa)\n"
|
||||
" return;", getGoogleStyleWithColumns(14));
|
||||
" return;", getGoogleStyleWithColumns(14));
|
||||
verifyGoogleFormat("if (a) // Can't merge this\n"
|
||||
" f();\n");
|
||||
verifyGoogleFormat("if (a) /* still don't merge */\n"
|
||||
" f();");
|
||||
verifyGoogleFormat("if (a) { // Never merge this\n"
|
||||
" f();\n"
|
||||
"}");
|
||||
verifyGoogleFormat("if (a) { /* Never merge this */\n"
|
||||
" f();\n"
|
||||
"}");
|
||||
}
|
||||
|
||||
TEST_F(FormatTest, ParseIfElse) {
|
||||
|
|
Loading…
Reference in New Issue