зеркало из https://github.com/microsoft/clang-1.git
Fixes indent in linkage specification blocks.
We now indent: extern "C" { int a; } without additional indent inside the extern "C" block. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173045 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
9c8c40e733
Коммит
d19dc2ddf3
|
@ -311,6 +311,18 @@ void UnwrappedLineParser::parseStructuralElement() {
|
|||
case tok::kw_return:
|
||||
parseReturn();
|
||||
return;
|
||||
case tok::kw_extern:
|
||||
nextToken();
|
||||
if (FormatTok.Tok.is(tok::string_literal)) {
|
||||
nextToken();
|
||||
if (FormatTok.Tok.is(tok::l_brace)) {
|
||||
parseBlock(0);
|
||||
addUnwrappedLine();
|
||||
return;
|
||||
}
|
||||
}
|
||||
// In all other cases, parse the declaration.
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -526,6 +526,10 @@ TEST_F(FormatTest, FormatsNamespaces) {
|
|||
"void f() { f(); }");
|
||||
}
|
||||
|
||||
TEST_F(FormatTest, FormatsExternC) {
|
||||
verifyFormat("extern \"C\" {\nint a;");
|
||||
}
|
||||
|
||||
TEST_F(FormatTest, FormatTryCatch) {
|
||||
// FIXME: Handle try-catch explicitly in the UnwrappedLineParser, then we'll
|
||||
// also not create single-line-blocks.
|
||||
|
|
Загрузка…
Ссылка в новой задаче