Skip to content
This repository was archived by the owner on Sep 12, 2025. It is now read-only.

Commit d9abcdd

Browse files
committed
[clang-format] Fix ObjC method indent after f7f9f94
Commit llvm@f7f9f94 changed the indent of ObjC method arguments from +4 to +2, if the method occurs after a block statement. I believe this was unintentional and there was insufficient ObjC test coverage to catch this. Example: `clang-format -style=google test.mm` before: ``` void aaaaaaaaaaaaaaaaaaaaa(int c) { if (c) { f(); } [dddddddddddddddddddddddddddddddddddddddddddddddddddddddd eeeeeeeeeeeeeeeeeeeeeeeeeeeee:^(fffffffffffffff gggggggg) { f(SSSSS, c); }]; } ``` after: ``` void aaaaaaaaaaaaaaaaaaaaa(int c) { if (c) { f(); } [dddddddddddddddddddddddddddddddddddddddddddddddddddddddd eeeeeeeeeeeeeeeeeeeeeeeeeeeee:^(fffffffffffffff gggggggg) { f(SSSSS, c); }]; } ``` Differential Revision: https://reviews.llvm.org/D99063
1 parent d90b123 commit d9abcdd

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

clang/lib/Format/UnwrappedLineParser.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -649,7 +649,6 @@ void UnwrappedLineParser::parseBlock(bool MustBeDeclaration, unsigned AddLevels,
649649
nextToken();
650650

651651
Line->Level = InitialLevel;
652-
FormatTok->setBlockKind(BK_Block);
653652

654653
if (PPStartHash == PPEndHash) {
655654
Line->MatchingOpeningBlockLineIndex = OpeningLineIndex;

clang/unittests/Format/FormatTestObjC.cpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -977,6 +977,19 @@ TEST_F(FormatTestObjC, FormatObjCMethodExpr) {
977977
" performSelectorOnMainThread:@selector(loadAccessories)\n"
978978
" withObject:nil\n"
979979
" waitUntilDone:false];");
980+
981+
// The appropriate indentation is used after a block statement.
982+
Style.ContinuationIndentWidth = 4;
983+
verifyFormat(
984+
"void aaaaaaaaaaaaaaaaaaaaa(int c) {\n"
985+
" if (c) {\n"
986+
" f();\n"
987+
" }\n"
988+
" [dddddddddddddddddddddddddddddddddddddddddddddddddddddddd\n"
989+
" eeeeeeeeeeeeeeeeeeeeeeeeeeeee:^(fffffffffffffff gggggggg) {\n"
990+
" f(SSSSS, c);\n"
991+
" }];\n"
992+
"}");
980993
}
981994

982995
TEST_F(FormatTestObjC, ObjCAt) {

0 commit comments

Comments
 (0)