forked from OSchip/llvm-project
[ClangFormat] 'try' of function-try-block doesn't obey BraceWrapping
It should respond to AfterFunction, not AfterControlStatement. Fixes PR39067 llvm-svn: 343305
This commit is contained in:
parent
47a8980afa
commit
cb5ffbed71
|
@ -1266,6 +1266,8 @@ void UnwrappedLineParser::parseStructuralElement() {
|
|||
break;
|
||||
case tok::kw_try:
|
||||
// We arrive here when parsing function-try blocks.
|
||||
if (Style.BraceWrapping.AfterFunction)
|
||||
addUnwrappedLine();
|
||||
parseTryCatch();
|
||||
return;
|
||||
case tok::identifier: {
|
||||
|
|
|
@ -2628,6 +2628,16 @@ TEST_F(FormatTest, MacroCallsWithoutTrailingSemicolon) {
|
|||
" A(X x)\n"
|
||||
" try : t(0) {} catch (...) {}\n"
|
||||
"};"));
|
||||
FormatStyle Style = getLLVMStyle();
|
||||
Style.BreakBeforeBraces = FormatStyle::BS_Custom;
|
||||
Style.BraceWrapping.AfterControlStatement = true;
|
||||
Style.BraceWrapping.AfterFunction = true;
|
||||
EXPECT_EQ("void f()\n"
|
||||
"try\n"
|
||||
"{\n"
|
||||
"}",
|
||||
format("void f() try {\n"
|
||||
"}", Style));
|
||||
EXPECT_EQ("class SomeClass {\n"
|
||||
"public:\n"
|
||||
" SomeClass() EXCLUSIVE_LOCK_FUNCTION(mu_);\n"
|
||||
|
|
Loading…
Reference in New Issue