[clang-tools-extra] [clang-tidy] suggest fix it hints for string concat (PR #188430)

Zeyi Xu via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 25 06:00:11 PDT 2026


================
@@ -14,18 +14,28 @@ int main() {
     f(mystr1 + mystr2 + mystr1);
     // CHECK-MESSAGES: :[[@LINE-1]]:23: warning: string concatenation results in allocation of unnecessary temporary strings; consider using 'operator+=' or 'string::append()' instead
     mystr1 = mystr1 + mystr2;
-    // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: string concatenation
+    // CHECK-MESSAGES: :[[@LINE-1]]:12: warning: string concatenation
+    // CHECK-FIXES:    mystr1 += mystr2;
     mystr1 = mystr2 + mystr2 + mystr2;
-    // CHECK-MESSAGES: :[[@LINE-1]]:30: warning: string concatenation
+    // CHECK-MESSAGES: :[[@LINE-1]]:30: warning: string concatenation   
     mystr1 = mystr2 + mystr1;
-    // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: string concatenation
+    // CHECK-MESSAGES: :[[@LINE-1]]:12: warning: string concatenation
+    // CHECK-FIXES:    mystr1 += mystr2;
     mywstr1 = mywstr2 + mywstr1;
-    // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: string concatenation
+    // CHECK-MESSAGES: :[[@LINE-1]]:13: warning: string concatenation
+    // CHECK-FIXES:    mywstr1 += mywstr2;
     mywstr1 = mywstr2 + mywstr2 + mywstr2;
     // CHECK-MESSAGES: :[[@LINE-1]]:33: warning: string concatenation
     myautostr1 = myautostr1 + myautostr2;
-    // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: string concatenation
-
+    // CHECK-MESSAGES: :[[@LINE-1]]:16: warning: string concatenation
+    // CHECK-FIXES:    myautostr1 += myautostr2;
+    
+    // Match against multple lines
+   /*  mystr1 = mystr1 + mystr2 + mystr2;
+   // CHECK-DAG: :33:12: warning: string concatenation
----------------
zeyi2 wrote:

Would you please use `:[[@LINE-n]]:` format instead of hardcoding the number?

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


More information about the cfe-commits mailing list