forked from OSchip/llvm-project
clang-format: With ColumnLimit=0, keep short array literals on a line.
Before: NSArray* a = [[NSArray alloc] initWithArray:@[ @"a" ] copyItems:YES]; After: NSArray* a = [[NSArray alloc] initWithArray:@[ @"a" ] copyItems:YES]; This fixed llvm.org/PR19080. llvm-svn: 206161
This commit is contained in:
parent
90527cb324
commit
af4fee2636
|
@ -142,6 +142,7 @@ bool ContinuationIndenter::mustBreak(const LineState &State) {
|
|||
return true;
|
||||
if (((Previous.Type == TT_DictLiteral && Previous.is(tok::l_brace)) ||
|
||||
Previous.Type == TT_ArrayInitializerLSquare) &&
|
||||
(Style.ColumnLimit > 0 || Previous.ParameterCount > 1) &&
|
||||
getLengthToMatchingParen(Previous) + State.Column > getColumnLimit(State))
|
||||
return true;
|
||||
if (Current.Type == TT_CtorInitializerColon &&
|
||||
|
|
|
@ -8148,6 +8148,20 @@ TEST_F(FormatTest, FormatsWithWebKitStyle) {
|
|||
format("#define aNumber \\\n"
|
||||
" 10",
|
||||
Style));
|
||||
|
||||
// Keep empty and one-element array literals on a single line.
|
||||
verifyFormat("NSArray* a = [[NSArray alloc] initWithArray:@[]\n"
|
||||
" copyItems:YES];",
|
||||
Style);
|
||||
verifyFormat("NSArray* a = [[NSArray alloc] initWithArray:@[ @\"a\" ]\n"
|
||||
" copyItems:YES];",
|
||||
Style);
|
||||
verifyFormat("NSArray* a = [[NSArray alloc] initWithArray:@[\n"
|
||||
" @\"a\",\n"
|
||||
" @\"a\"\n"
|
||||
" ]\n"
|
||||
" copyItems:YES];",
|
||||
Style);
|
||||
}
|
||||
|
||||
TEST_F(FormatTest, FormatsLambdas) {
|
||||
|
|
Loading…
Reference in New Issue