This only affects styles that prevent bin packing. There, a break after
a template declaration also forced a line break after the function name.
Before:
template <class SomeType, class SomeOtherType>
SomeType
SomeFunction(SomeType Type, SomeOtherType OtherType) {}
After:
template <class SomeType, class SomeOtherType>
SomeType SomeFunction(SomeType Type, SomeOtherType OtherType) {}
This fixes llvm.org/PR16072.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182457
91177308-0d34-0410-b5e6-
96231b3b80d8
State.Column = FirstIndent;
State.NextToken = &RootToken;
State.Stack.push_back(
- ParenState(FirstIndent, FirstIndent, !Style.BinPackParameters,
+ ParenState(FirstIndent, FirstIndent, /*AvoidBinPacking=*/ false,
/*NoLineBreak=*/ false));
State.LineContainsContinuedForLoopSection = false;
State.ParenLevel = 0;
" .aaaaaaa();\n"
"}",
NoBinPacking);
+ verifyFormat(
+ "template <class SomeType, class SomeOtherType>\n"
+ "SomeType SomeFunction(SomeType Type, SomeOtherType OtherType) {}",
+ NoBinPacking);
}
TEST_F(FormatTest, FormatsBuilderPattern) {