diff --git a/clang/lib/Format/UnwrappedLineFormatter.cpp b/clang/lib/Format/UnwrappedLineFormatter.cpp --- a/clang/lib/Format/UnwrappedLineFormatter.cpp +++ b/clang/lib/Format/UnwrappedLineFormatter.cpp @@ -390,7 +390,7 @@ for (auto *CompactedLine = I + J; CompactedLine <= ClosingLine; ++CompactedLine) { if (!(*CompactedLine)->InPPDirective) - (*CompactedLine)->Level -= OutdentBy; + (*CompactedLine)->Level -= std::min(OutdentBy, (*CompactedLine)->Level); } } return J - 1;