[clang] 794b1ee - [clang-format] Add tests for aligning `operator=` with `=delete`. NFC.

Marek Kurdej via cfe-commits cfe-commits at lists.llvm.org
Thu Jan 20 00:39:23 PST 2022


Author: Marek Kurdej
Date: 2022-01-20T09:39:08+01:00
New Revision: 794b1eebe749d739a0c530ca53cadc8925fbfec2

URL: https://github.com/llvm/llvm-project/commit/794b1eebe749d739a0c530ca53cadc8925fbfec2
DIFF: https://github.com/llvm/llvm-project/commit/794b1eebe749d739a0c530ca53cadc8925fbfec2.diff

LOG: [clang-format] Add tests for aligning `operator=` with `=delete`. NFC.

Also, add test case from https://github.com/llvm/llvm-project/issues/33044.
This was actually fixed in https://github.com/llvm/llvm-project/commit/480a1fab72f4e367a5986d572914d252c318431d, but there were no tests for delete.

Added: 
    

Modified: 
    clang/unittests/Format/FormatTest.cpp

Removed: 
    


################################################################################
diff  --git a/clang/unittests/Format/FormatTest.cpp b/clang/unittests/Format/FormatTest.cpp
index 6bd417388fc7..0ddbac48d716 100644
--- a/clang/unittests/Format/FormatTest.cpp
+++ b/clang/unittests/Format/FormatTest.cpp
@@ -16274,6 +16274,10 @@ TEST_F(FormatTest, AlignConsecutiveAssignments) {
                "int &operator() = default;\n"
                "int &operator=() {",
                Alignment);
+  verifyFormat("int f()         = delete;\n"
+               "int &operator() = delete;\n"
+               "int &operator=() {",
+               Alignment);
   verifyFormat("int f()         = default; // comment\n"
                "int &operator() = default; // comment\n"
                "int &operator=() {",
@@ -16294,10 +16298,25 @@ TEST_F(FormatTest, AlignConsecutiveAssignments) {
                "int &operator() = default;\n"
                "int &operator=();",
                Alignment);
+  verifyFormat("int f()         = delete;\n"
+               "int &operator() = delete;\n"
+               "int &operator=();",
+               Alignment);
   verifyFormat("/* long long padding */ int f() = default;\n"
                "int &operator()                 = default;\n"
                "int &operator/**/ =();",
                Alignment);
+  // https://llvm.org/PR33697
+  FormatStyle AlignmentWithPenalty = getLLVMStyle();
+  AlignmentWithPenalty.AlignConsecutiveAssignments =
+      FormatStyle::ACS_Consecutive;
+  AlignmentWithPenalty.PenaltyReturnTypeOnItsOwnLine = 5000;
+  verifyFormat("class SSSSSSSSSSSSSSSSSSSSSSSSSSSS {\n"
+               "  void f() = delete;\n"
+               "  SSSSSSSSSSSSSSSSSSSSSSSSSSSS &operator=(\n"
+               "      const SSSSSSSSSSSSSSSSSSSSSSSSSSSS &other) = delete;\n"
+               "};\n",
+               AlignmentWithPenalty);
 
   // Bug 25167
   /* Uncomment when fixed


        


More information about the cfe-commits mailing list