owenpan added a comment. In D144296#4136133 <https://reviews.llvm.org/D144296#4136133>, @rymiel wrote:
> Note: this patch also makes `LevelIndentTracker::skipLine` obsolete. I > suppose I could clean that up in a following patch I'd delete it in this patch. ================ Comment at: clang/lib/Format/UnwrappedLineFormatter.cpp:369 if (Style.CompactNamespaces) { - if (auto nsToken = TheLine->First->getNamespaceToken()) { - int i = 0; - unsigned closingLine = TheLine->MatchingClosingBlockLineIndex - 1; - for (; I + 1 + i != E && - nsToken->TokenText == getNamespaceTokenText(I[i + 1]) && - closingLine == I[i + 1]->MatchingClosingBlockLineIndex && - I[i + 1]->Last->TotalLength < Limit; - i++, --closingLine) { - // No extra indent for compacted namespaces. - IndentTracker.skipLine(*I[i + 1]); + if (auto *nsToken = TheLine->First->getNamespaceToken()) { + int j = 1; ---------------- ================ Comment at: clang/lib/Format/UnwrappedLineFormatter.cpp:371-373 + unsigned closingLineIndex = TheLine->MatchingClosingBlockLineIndex - 1; + for (; I + j != E && ---------------- ================ Comment at: clang/lib/Format/UnwrappedLineFormatter.cpp:377 + I[j]->Last->TotalLength < Limit; + j++, --closingLineIndex) { + Limit -= I[j]->Last->TotalLength; ---------------- ================ Comment at: clang/lib/Format/UnwrappedLineFormatter.cpp:381 + // Reduce indent level for bodies of namespaces which were compacted, + // but only if their content was indented in the first place + auto *closingLine = AnnotatedLines.begin() + closingLineIndex + 1; ---------------- ================ Comment at: clang/lib/Format/UnwrappedLineFormatter.cpp:383 + auto *closingLine = AnnotatedLines.begin() + closingLineIndex + 1; + auto dedentBy = I[j]->Level - TheLine->Level; + for (auto *compactedLine = I + j; compactedLine <= closingLine; ---------------- `outdentBy`? ================ Comment at: clang/lib/Format/UnwrappedLineFormatter.cpp:385 + for (auto *compactedLine = I + j; compactedLine <= closingLine; + compactedLine++) { + if (!(*compactedLine)->InPPDirective) ---------------- ================ Comment at: clang/lib/Format/UnwrappedLineFormatter.cpp:387 + if (!(*compactedLine)->InPPDirective) + (*compactedLine)->Level-= dedentBy; + } ---------------- Did git-clang-format miss this? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144296/new/ https://reviews.llvm.org/D144296 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits