forked from OSchip/llvm-project
Don't remove all indentation when in #defines.
Otherwise, this can become hard to read. Before: #define A \ case 1: After: #define A \ case 1: llvm-svn: 177509
This commit is contained in:
parent
920b3b9a0c
commit
a127512cb4
|
@ -574,7 +574,7 @@ void UnwrappedLineParser::parseLabel() {
|
|||
return;
|
||||
nextToken();
|
||||
unsigned OldLineLevel = Line->Level;
|
||||
if (Line->Level > 0)
|
||||
if (Line->Level > 1 || (!Line->InPPDirective && Line->Level > 0))
|
||||
--Line->Level;
|
||||
if (CommentsBeforeNextToken.empty() && FormatTok.Tok.is(tok::l_brace)) {
|
||||
parseBlock(/*MustBeDeclaration=*/ false);
|
||||
|
|
|
@ -441,6 +441,11 @@ TEST_F(FormatTest, FormatsSwitchStatement) {
|
|||
" }\n"
|
||||
" break;\n"
|
||||
"}");
|
||||
verifyFormat("#define A \\\n"
|
||||
" switch (x) { \\\n"
|
||||
" case a: \\\n"
|
||||
" foo = b; \\\n"
|
||||
" }", getLLVMStyleWithColumns(20));
|
||||
|
||||
verifyGoogleFormat("switch (x) {\n"
|
||||
" case 1:\n"
|
||||
|
@ -1209,7 +1214,7 @@ TEST_F(FormatTest, MacroDefinitionsWithIncompleteCode) {
|
|||
|
||||
// FIXME: Improve formatting of case labels in macros.
|
||||
verifyFormat("#define SOMECASES \\\n"
|
||||
"case 1: \\\n"
|
||||
" case 1: \\\n"
|
||||
" case 2\n",
|
||||
getLLVMStyleWithColumns(20));
|
||||
|
||||
|
|
Loading…
Reference in New Issue