This revision was automatically updated to reflect the committed changes. Closed by commit rG3c18a8b3a349: [clang-format] Indent TT_CtorInitializerColon after requires clauses (authored by HazardyKnusperkeks).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D129942/new/ https://reviews.llvm.org/D129942 Files: clang/lib/Format/ContinuationIndenter.cpp clang/unittests/Format/FormatTest.cpp Index: clang/unittests/Format/FormatTest.cpp =================================================================== --- clang/unittests/Format/FormatTest.cpp +++ clang/unittests/Format/FormatTest.cpp @@ -24714,6 +24714,18 @@ "struct S {};", Style); + Style = getLLVMStyle(); + Style.ConstructorInitializerIndentWidth = 4; + Style.BreakConstructorInitializers = FormatStyle::BCIS_BeforeColon; + Style.PackConstructorInitializers = FormatStyle::PCIS_Never; + verifyFormat("constexpr Foo(Foo const &other)\n" + " requires std::is_copy_constructible<T>\n" + " : value{other.value} {\n" + " do_magic();\n" + " do_more_magic();\n" + "}", + Style); + // Not a clause, but we once hit an assert. verifyFormat("#if 0\n" "#else\n" Index: clang/lib/Format/ContinuationIndenter.cpp =================================================================== --- clang/lib/Format/ContinuationIndenter.cpp +++ clang/lib/Format/ContinuationIndenter.cpp @@ -1190,6 +1190,10 @@ break; } } + if (NextNonComment->isOneOf(TT_CtorInitializerColon, TT_InheritanceColon, + TT_InheritanceComma)) { + return State.FirstIndent + Style.ConstructorInitializerIndentWidth; + } if ((PreviousNonComment && (PreviousNonComment->ClosesTemplateDeclaration || PreviousNonComment->ClosesRequiresClause || @@ -1264,10 +1268,6 @@ Style.BreakInheritanceList == FormatStyle::BILS_AfterColon) { return CurrentState.Indent; } - if (NextNonComment->isOneOf(TT_CtorInitializerColon, TT_InheritanceColon, - TT_InheritanceComma)) { - return State.FirstIndent + Style.ConstructorInitializerIndentWidth; - } if (Previous.is(tok::r_paren) && !Current.isBinaryOperator() && !Current.isOneOf(tok::colon, tok::comment)) { return ContinuationIndent;
Index: clang/unittests/Format/FormatTest.cpp =================================================================== --- clang/unittests/Format/FormatTest.cpp +++ clang/unittests/Format/FormatTest.cpp @@ -24714,6 +24714,18 @@ "struct S {};", Style); + Style = getLLVMStyle(); + Style.ConstructorInitializerIndentWidth = 4; + Style.BreakConstructorInitializers = FormatStyle::BCIS_BeforeColon; + Style.PackConstructorInitializers = FormatStyle::PCIS_Never; + verifyFormat("constexpr Foo(Foo const &other)\n" + " requires std::is_copy_constructible<T>\n" + " : value{other.value} {\n" + " do_magic();\n" + " do_more_magic();\n" + "}", + Style); + // Not a clause, but we once hit an assert. verifyFormat("#if 0\n" "#else\n" Index: clang/lib/Format/ContinuationIndenter.cpp =================================================================== --- clang/lib/Format/ContinuationIndenter.cpp +++ clang/lib/Format/ContinuationIndenter.cpp @@ -1190,6 +1190,10 @@ break; } } + if (NextNonComment->isOneOf(TT_CtorInitializerColon, TT_InheritanceColon, + TT_InheritanceComma)) { + return State.FirstIndent + Style.ConstructorInitializerIndentWidth; + } if ((PreviousNonComment && (PreviousNonComment->ClosesTemplateDeclaration || PreviousNonComment->ClosesRequiresClause || @@ -1264,10 +1268,6 @@ Style.BreakInheritanceList == FormatStyle::BILS_AfterColon) { return CurrentState.Indent; } - if (NextNonComment->isOneOf(TT_CtorInitializerColon, TT_InheritanceColon, - TT_InheritanceComma)) { - return State.FirstIndent + Style.ConstructorInitializerIndentWidth; - } if (Previous.is(tok::r_paren) && !Current.isBinaryOperator() && !Current.isOneOf(tok::colon, tok::comment)) { return ContinuationIndent;
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits