[clang-tools-extra] [clang-tidy][NFC] Remove regex hacks to match full lines in tests (PR #162293)

via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 7 23:54:59 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang-tidy

Author: Victor Chernyakin (localspook)

<details>
<summary>Changes</summary>

This is part of the migration started by #<!-- -->133756. The next step would be moving many tests away from `--match-partial-fixes`.

Since the changes are all mechanical, I'm trying this as one PR, but I'll understand if people think this is too big and ask for it to be split up (in which case: how many chunks would you like?).

---

Patch is 656.66 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/162293.diff


84 Files Affected:

- (modified) clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp (+36-36) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp (+8-8) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp (+10-10) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp (+314-314) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-semicolon.cpp (+5-5) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables.cpp (+13-13) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments.cpp (+2-2) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp (+2-2) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp (+5-5) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters-strict.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.c (+2-2) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp (+29-29) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-cxx17.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx03.cpp (+42-42) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx11.cpp (+52-52) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/raw-string-literal.cpp (+16-16) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg-delayed.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp (+40-40) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/replace-disallow-copy-and-assign-macro.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-bool-literals.cpp (+27-27) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints-first-greatergreater.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints.cpp (+126-128) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-assignment.cpp (+8-8) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init.cpp (+10-10) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-allow-override-and-final.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-ms.cpp (+2-2) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-no-destructors.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-templates.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-macro.cpp (+10-10) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-no-macro-inscope.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp (+54-54) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-cxx20.cpp (+9-9) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx20.cpp (+7-7) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp (+12-12) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type.cpp (+122-122) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp (+11-11) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty-cxx20.cpp (+2-2) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp (+107-107) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static.cpp (+11-11) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-anon-record-fields.cpp (+27-27) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-bugfix-name-conflicts.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-case-match.cpp (+9-9) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-c-language.c (+125-125) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-cfgfile.cpp (+151-151) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation.cpp (+151-151) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-ignored-regexp.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp (+31-31) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp (+148-148) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-fixing.cpp (+9-9) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration.cpp (+79-79) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/make-member-function-const.cpp (+18-18) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp (+18-18) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-alternative.cpp (+33-33) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-traditional.cpp (+33-33) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp (+62-62) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers-check-first-declaration.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp (+20-20) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-control-flow.cpp (+12-12) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.c (+4-4) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.cpp (+11-11) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-member-init.cpp (+1-1) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-format.cpp (+12-12) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-function.cpp (+10-10) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-msvc.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr.cpp (+37-37) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-assignment.cpp (+6-6) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-return.cpp (+28-28) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp (+31-31) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance-nesting-threshold.cpp (+3-3) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance.cpp (+33-33) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/static-definition-in-anonymous-namespace.cpp (+11-11) 
- (modified) clang-tools-extra/test/clang-tidy/checkers/readability/uniqueptr-delete-release.cpp (+18-18) 


``````````diff
diff --git a/clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp b/clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp
index c2b5e4df985d8..53400ac04d3b5 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp
@@ -79,27 +79,27 @@ absl::Cleanup<cleanup_internal::Tag, Callback> MakeCleanup(Callback callback) {
 void test() {
   auto a = absl::MakeCleanup([] {});
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: prefer absl::Cleanup's class template argument deduction pattern in C++17 and higher
-  // CHECK-FIXES: {{^}}  absl::Cleanup a = [] {};{{$}}
+  // CHECK-FIXES: absl::Cleanup a = [] {};
 
   auto b = absl::MakeCleanup(std::function<void()>([] {}));
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: prefer absl::Cleanup{{.*}}C++17 and higher
-  // CHECK-FIXES: {{^}}  absl::Cleanup b = std::function<void()>([] {});{{$}}
+  // CHECK-FIXES: absl::Cleanup b = std::function<void()>([] {});
 
   const auto c = absl::MakeCleanup([] {});
   // CHECK-MESSAGES: :[[@LINE-1]]:9: warning: prefer absl::Cleanup{{.*}}C++17 and higher
-  // CHECK-FIXES: {{^}}  const absl::Cleanup c = [] {};{{$}}
+  // CHECK-FIXES: const absl::Cleanup c = [] {};
 
   const auto d = absl::MakeCleanup(std::function<void()>([] {}));
   // CHECK-MESSAGES: :[[@LINE-1]]:9: warning: prefer absl::Cleanup{{.*}}C++17 and higher
-  // CHECK-FIXES: {{^}}  const absl::Cleanup d = std::function<void()>([] {});{{$}}
+  // CHECK-FIXES: const absl::Cleanup d = std::function<void()>([] {});
 
   // Preserves extra parens
   auto e = absl::MakeCleanup(([] {}));
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: prefer absl::Cleanup{{.*}}C++17 and higher
-  // CHECK-FIXES: {{^}}  absl::Cleanup e = ([] {});{{$}}
+  // CHECK-FIXES: absl::Cleanup e = ([] {});
 
   // Preserves comments
   auto f = /* a */ absl::MakeCleanup(/* b */ [] { /* c */ } /* d */) /* e */;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: prefer absl::Cleanup{{.*}}C++17 and higher
-  // CHECK-FIXES: {{^}}  absl::Cleanup f = /* a */ /* b */ [] { /* c */ } /* d */ /* e */;{{$}}
+  // CHECK-FIXES: absl::Cleanup f = /* a */ /* b */ [] { /* c */ } /* d */ /* e */;
 }
diff --git a/clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp b/clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp
index 9a2585da5b277..90936fbb12a1f 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp
@@ -97,7 +97,7 @@ void Bar() {
   // CHECK-MESSAGES: [[@LINE-1]]:3: warning: call to 'absl::StrCat' has no effect
   A = StrCat(A, B);
 // CHECK-MESSAGES: [[@LINE-1]]:3: warning: call 'absl::StrAppend' instead of 'absl::StrCat' when appending to a string to avoid a performance penalty
-// CHECK-FIXES: {{^}}  absl::StrAppend(&A, B);
+// CHECK-FIXES: absl::StrAppend(&A, B);
   B = StrCat(A, B);
 
 #define M(X) X = StrCat(X, A)
@@ -117,7 +117,7 @@ void OutsideAbsl() {
   std::string A, B;
   A = absl::StrCat(A, B);
 // CHECK-MESSAGES: [[@LINE-1]]:3: warning: call 'absl::StrAppend' instead of 'absl::StrCat' when appending to a string to avoid a performance penalty
-// CHECK-FIXES: {{^}}  absl::StrAppend(&A, B);
+// CHECK-FIXES: absl::StrAppend(&A, B);
 }
 
 void OutsideUsingAbsl() {
@@ -125,5 +125,5 @@ void OutsideUsingAbsl() {
   using absl::StrCat;
   A = StrCat(A, B);
 // CHECK-MESSAGES: [[@LINE-1]]:3: warning: call 'absl::StrAppend' instead of 'absl::StrCat' when appending to a string to avoid a performance penalty
-// CHECK-FIXES: {{^}}  absl::StrAppend(&A, B);
+// CHECK-FIXES: absl::StrAppend(&A, B);
 }
diff --git a/clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp b/clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
index bb9ba9918a1ba..c5d1f178e48b0 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
@@ -70,41 +70,41 @@ void basic_tests() {
   std::string ss;
   ss.find("a") == std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of find() == npos
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ss, "a");{{$}}
+  // CHECK-FIXES: !absl::StrContains(ss, "a");
 
   ss.find("a") != std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of find() != npos
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ss, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(ss, "a");
 
   std::string::npos != ss.find("a");
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ss, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(ss, "a");
 
   std::string_view ssv;
   ssv.find("a") == std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ssv, "a");{{$}}
+  // CHECK-FIXES: !absl::StrContains(ssv, "a");
 
   ssv.find("a") != std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ssv, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(ssv, "a");
 
   std::string_view::npos != ssv.find("a");
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ssv, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(ssv, "a");
 
   absl::string_view asv;
   asv.find("a") == absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(asv, "a");{{$}}
+  // CHECK-FIXES: !absl::StrContains(asv, "a");
 
   asv.find("a") != absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(asv, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(asv, "a");
 
   absl::string_view::npos != asv.find("a");
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(asv, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(asv, "a");
 }
 
 // Confirms that it works even if you mix-and-match the type for find and for
@@ -115,29 +115,29 @@ void mismatched_npos() {
   std::string ss;
   ss.find("a") == std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ss, "a");{{$}}
+  // CHECK-FIXES: !absl::StrContains(ss, "a");
 
   ss.find("a") != absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ss, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(ss, "a");
 
   std::string_view ssv;
   ssv.find("a") == absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ssv, "a");{{$}}
+  // CHECK-FIXES: !absl::StrContains(ssv, "a");
 
   ssv.find("a") != std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ssv, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(ssv, "a");
 
   absl::string_view asv;
   asv.find("a") == std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(asv, "a");{{$}}
+  // CHECK-FIXES: !absl::StrContains(asv, "a");
 
   asv.find("a") != std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(asv, "a");{{$}}
+  // CHECK-FIXES: absl::StrContains(asv, "a");
 }
 
 // Confirms that it works even when the needle or the haystack are more
@@ -146,41 +146,41 @@ void subexpression_tests() {
   std::string ss, ss2;
   foo_ss(ss).find(ss2) == std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(foo_ss(ss), ss2);{{$}}
+  // CHECK-FIXES: !absl::StrContains(foo_ss(ss), ss2);
 
   ss.find(foo_ss(ss2)) != std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ss, foo_ss(ss2));{{$}}
+  // CHECK-FIXES: absl::StrContains(ss, foo_ss(ss2));
 
   foo_ss(bar_ss()).find(foo_ss(ss2)) != std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(foo_ss(bar_ss()), foo_ss(ss2));{{$}}
+  // CHECK-FIXES: absl::StrContains(foo_ss(bar_ss()), foo_ss(ss2));
 
   std::string_view ssv, ssv2;
   foo_ssv(ssv).find(ssv2) == std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(foo_ssv(ssv), ssv2);{{$}}
+  // CHECK-FIXES: !absl::StrContains(foo_ssv(ssv), ssv2);
 
   ssv.find(foo_ssv(ssv2)) != std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(ssv, foo_ssv(ssv2));{{$}}
+  // CHECK-FIXES: absl::StrContains(ssv, foo_ssv(ssv2));
 
   foo_ssv(bar_ssv()).find(foo_ssv(ssv2)) != std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(foo_ssv(bar_ssv()), foo_ssv(ssv2));{{$}}
+  // CHECK-FIXES: absl::StrContains(foo_ssv(bar_ssv()), foo_ssv(ssv2));
 
   absl::string_view asv, asv2;
   foo_asv(asv).find(asv2) == absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(foo_asv(asv), asv2);{{$}}
+  // CHECK-FIXES: !absl::StrContains(foo_asv(asv), asv2);
 
   asv.find(foo_asv(asv2)) != absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(asv, foo_asv(asv2));{{$}}
+  // CHECK-FIXES: absl::StrContains(asv, foo_asv(asv2));
 
   foo_asv(bar_asv()).find(foo_asv(asv2)) != absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}absl::StrContains(foo_asv(bar_asv()), foo_asv(asv2));{{$}}
+  // CHECK-FIXES: absl::StrContains(foo_asv(bar_asv()), foo_asv(asv2));
 }
 
 // Confirms that it works with string literal, char* and const char* parameters.
@@ -191,58 +191,58 @@ void string_literal_and_char_ptr_tests() {
   std::string ss;
   ss.find("c") == std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ss, "c");{{$}}
+  // CHECK-FIXES: !absl::StrContains(ss, "c");
 
   ss.find(c) == std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ss, c);{{$}}
+  // CHECK-FIXES: !absl::StrContains(ss, c);
 
   ss.find(cc) == std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ss, cc);{{$}}
+  // CHECK-FIXES: !absl::StrContains(ss, cc);
 
   std::string_view ssv;
   ssv.find("c") == std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ssv, "c");{{$}}
+  // CHECK-FIXES: !absl::StrContains(ssv, "c");
 
   ssv.find(c) == std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ssv, c);{{$}}
+  // CHECK-FIXES: !absl::StrContains(ssv, c);
 
   ssv.find(cc) == std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ssv, cc);{{$}}
+  // CHECK-FIXES: !absl::StrContains(ssv, cc);
 
   absl::string_view asv;
   asv.find("c") == absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(asv, "c");{{$}}
+  // CHECK-FIXES: !absl::StrContains(asv, "c");
 
   asv.find(c) == absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(asv, c);{{$}}
+  // CHECK-FIXES: !absl::StrContains(asv, c);
 
   asv.find(cc) == absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(asv, cc);{{$}}
+  // CHECK-FIXES: !absl::StrContains(asv, cc);
 }
 
 void char_param_tests() {
   std::string ss;
   ss.find('c') == std::string::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ss, 'c');{{$}}
+  // CHECK-FIXES: !absl::StrContains(ss, 'c');
 
   std::string_view ssv;
   ssv.find('c') == std::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(ssv, 'c');{{$}}
+  // CHECK-FIXES: !absl::StrContains(ssv, 'c');
 
   absl::string_view asv;
   asv.find('c') == absl::string_view::npos;
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use !absl::StrContains instead of
-  // CHECK-FIXES: {{^[[:space:]]*}}!absl::StrContains(asv, 'c');{{$}}
+  // CHECK-FIXES: !absl::StrContains(asv, 'c');
 }
 
 #define FOO(a, b, c, d) ((a).find(b) == std::string::npos ? (c) : (d))
diff --git a/clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp b/clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
index 3b977ad681adf..28b19ccdcf450 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
@@ -12,7 +12,7 @@ void g() {
   // CHECK-NOTES: [[@LINE+2]]:14: warning: argument name 'z' in comment does not match parameter name 'y'
   // CHECK-NOTES: [[@LINE-5]]:19: note: 'y' declared here
   f(/*y=*/0, /*z=*/0);
-  // CHECK-FIXES: {{^}}  f(/*y=*/0, /*z=*/0);
+  // CHECK-FIXES: f(/*y=*/0, /*z=*/0);
 
   f(/*x=*/1, /*y=*/1);
 
diff --git a/clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp b/clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp
index d29fa9cdd4e9b..dfb4b9e115fd5 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp
@@ -51,12 +51,12 @@ struct custom_container {
 template <typename T> void g() {
   T t;
   t.erase(std::remove(t.begin(), t.end(), 10));
-  // CHECK-FIXES: {{^  }}t.erase(std::remove(t.begin(), t.end(), 10));{{$}}
+  // CHECK-FIXES: t.erase(std::remove(t.begin(), t.end(), 10));
 
   std::vector<int> v;
   v.erase(remove(v.begin(), v.end(), 10));
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: this call will remove at most one
-  // CHECK-FIXES: {{^  }}v.erase(remove(v.begin(), v.end(), 10), v.end());{{$}}
+  // CHECK-FIXES: v.erase(remove(v.begin(), v.end(), 10), v.end());
 }
 
 #define ERASE(x, y) x.erase(remove(x.begin(), x.end(), y))
@@ -67,34 +67,34 @@ int main() {
 
   v.erase(remove(v.begin(), v.end(), 10));
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: this call will remove at most one item even when multiple items should be removed [bugprone-inaccurate-erase]
-  // CHECK-FIXES: {{^  }}v.erase(remove(v.begin(), v.end(), 10), v.end());{{$}}
+  // CHECK-FIXES: v.erase(remove(v.begin(), v.end(), 10), v.end());
   v.erase(remove(v.begin(), v.end(), 20), v.end());
 
   auto *p = &v;
   p->erase(remove(p->begin(), p->end(), 11));
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: this call will remove at most one
-  // CHECK-FIXES: {{^  }}p->erase(remove(p->begin(), p->end(), 11), p->end());{{$}}
+  // CHECK-FIXES: p->erase(remove(p->begin(), p->end(), 11), p->end());
 
   std::vector_with_const_iterator<int> v2;
   v2.erase(remove(v2.begin(), v2.end(), 12));
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: this call will remove at most one
-  // CHECK-FIXES: {{^  }}v2.erase(remove(v2.begin(), v2.end(), 12), v2.end());{{$}}
+  // CHECK-FIXES: v2.erase(remove(v2.begin(), v2.end(), 12), v2.end());
 
   // Fix is not trivial.
   auto it = v.end();
   v.erase(remove(v.begin(), it, 10));
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: this call will remove at most one
-  // CHECK-FIXES: {{^  }}v.erase(remove(v.begin(), it, 10));{{$}}
+  // CHECK-FIXES: v.erase(remove(v.begin(), it, 10));
 
   g<std::vector<int>>();
   g<custom_container>();
 
   ERASE(v, 15);
   // CHECK-MESSAGES: :[[@LINE-1]]:9: warning: this call will remove at most one
-  // CHECK-FIXES: {{^  }}ERASE(v, 15);{{$}}
+  // CHECK-FIXES: ERASE(v, 15);
 
   std::vector<std::unique_ptr<int>> vupi;
   auto iter = vupi.begin();
   vupi.erase(iter++);
-  // CHECK-FIXES: {{^  }}vupi.erase(iter++);{{$}}
+  // CHECK-FIXES: vupi.erase(iter++);
 }
diff --git a/clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp b/clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp
index 58d63fa7afd5e..bc7b47e38fa98 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp
@@ -17,7 +17,7 @@ size_t strlen(const char *);
 void bad_std_malloc_std_strlen(char *name) {
   char *new_name = (char *)std::malloc(std::strlen(name + 1));
   // CHECK-MESSAGES: :[[@LINE-1]]:28: warning: addition operator is applied to the argument of strlen
-  // CHECK-FIXES: {{^  char \*new_name = \(char \*\)std::malloc\(}}std::strlen(name) + 1{{\);$}}
+  // CHECK-FIXES: char *new_name = (char *)std::malloc(std::strlen(name) + 1);
 }
 
 void ignore_non_std_malloc_std_strlen(char *name) {
@@ -35,7 +35,7 @@ void ignore_std_malloc_non_std_strlen(char *name) {
 void bad_new_strlen(char *name) {
   char *new_name = new char[std::strlen(name + 1)];
   // CHECK-MESSAGES: :[[@LINE-1]]:20: warning: addition operator is applied to the argument of strlen
-  // CHECK-FIXES: {{^  char \*new_name = new char\[}}std::strlen(name) + 1{{\];$}}
+  // CHECK-FIXES: char *new_name = new char[std::strlen(name) + 1];
 }
 
 void good_new_strlen(char *name) {
@@ -54,5 +54,5 @@ class C {
 void bad_custom_new_strlen(char *name) {
   C *new_name = new C[std::strlen(name + 1)];
   // CHECK-MESSAGES: :[[@LINE-1]]:17: warning: addition operator is applied to the argument of strlen
-  // CHECK-FIXES: {{^  C \*new_name = new C\[}}std::strlen(name) + 1{{\];$}}
+  // CHECK-FIXES: C *new_name = new C[std::strlen(name) + 1];
 }
diff --git a/clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp b/clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp
index 62ad8de7d3007..0dbd7443f8edf 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp
@@ -12,16 +12,16 @@ void __f() {}
 
 void f();
 // CHECK-MESSAGES: :[[@LINE-1]]:6: warning: declaration uses identifier 'f', which is not a reserved identifier [bugprone-reserved-identifier]
-// CHECK-FIXES: {{^}}void __f();{{$}}
+// CHECK-FIXES: void __f();
 struct helper {};
 // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: declaration uses identifier 'helper', which is not a reserved identifier [bugprone-reserved-identifier]
-// CHECK-FIXES: {{^}}struct __helper {};{{$}}
+// CHECK-FIXES: struct __helper {};
 struct Helper {};
 // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: declaration uses identifier 'Helper', which is not a reserved identifier [bugprone-reserved-identifi...
[truncated]

``````````

</details>


https://github.com/llvm/llvm-project/pull/162293


More information about the cfe-commits mailing list