summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/test/clang-tidy/performance-inefficient-string-concatenation.cpp
diff options
context:
space:
mode:
authorDmitri Gribenko <gribozavr@gmail.com>2019-10-11 12:05:42 +0000
committerDmitri Gribenko <gribozavr@gmail.com>2019-10-11 12:05:42 +0000
commit885c559369fe3d6323898c17787bd0454065fc34 (patch)
treeba43b987e078f4c2a033acc71ad3d7f1ee385a11 /clang-tools-extra/test/clang-tidy/performance-inefficient-string-concatenation.cpp
parent9f6a873268e1ad9855873d9d8007086c0d01cf4f (diff)
downloadbcm5719-llvm-885c559369fe3d6323898c17787bd0454065fc34.tar.gz
bcm5719-llvm-885c559369fe3d6323898c17787bd0454065fc34.zip
[ClangTidy] Separate tests for infrastructure and checkers
Summary: This change moves tests for checkers and infrastructure into separate directories, making it easier to find infrastructure tests. Tests for checkers are already easy to find because they are named after the checker. Tests for infrastructure were difficult to find because they were outnumbered by tests for checkers. Now they are in a separate directory. Reviewers: jfb, jdoerfert, lebedev.ri Subscribers: srhines, nemanjai, aheejin, kbarton, christof, mgrang, arphaman, jfb, lebedev.ri, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68807 llvm-svn: 374540
Diffstat (limited to 'clang-tools-extra/test/clang-tidy/performance-inefficient-string-concatenation.cpp')
-rw-r--r--clang-tools-extra/test/clang-tidy/performance-inefficient-string-concatenation.cpp48
1 files changed, 0 insertions, 48 deletions
diff --git a/clang-tools-extra/test/clang-tidy/performance-inefficient-string-concatenation.cpp b/clang-tools-extra/test/clang-tidy/performance-inefficient-string-concatenation.cpp
deleted file mode 100644
index 1dbd56b3222..00000000000
--- a/clang-tools-extra/test/clang-tidy/performance-inefficient-string-concatenation.cpp
+++ /dev/null
@@ -1,48 +0,0 @@
-// RUN: %check_clang_tidy %s performance-inefficient-string-concatenation %t
-
-namespace std {
-template <typename T>
-class basic_string {
-public:
- basic_string() {}
- ~basic_string() {}
- basic_string<T> *operator+=(const basic_string<T> &) {}
- friend basic_string<T> operator+(const basic_string<T> &, const basic_string<T> &) {}
-};
-typedef basic_string<char> string;
-typedef basic_string<wchar_t> wstring;
-}
-
-void f(std::string) {}
-std::string g(std::string) {}
-
-int main() {
- std::string mystr1, mystr2;
- std::wstring mywstr1, mywstr2;
- auto myautostr1 = mystr1;
- auto myautostr2 = mystr2;
-
- for (int i = 0; i < 10; ++i) {
- 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
- mystr1 = mystr2 + mystr2 + mystr2;
- // CHECK-MESSAGES: :[[@LINE-1]]:30: warning: string concatenation
- mystr1 = mystr2 + mystr1;
- // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: string concatenation
- mywstr1 = mywstr2 + mywstr1;
- // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: string concatenation
- mywstr1 = mywstr2 + mywstr2 + mywstr2;
- // CHECK-MESSAGES: :[[@LINE-1]]:33: warning: string concatenation
- myautostr1 = myautostr1 + myautostr2;
- // CHECK-MESSAGES: :[[@LINE-1]]:5: warning: string concatenation
-
- mywstr1 = mywstr2 + mywstr2;
- mystr1 = mystr2 + mystr2;
- mystr1 += mystr2;
- f(mystr2 + mystr1);
- mystr1 = g(mystr1);
- }
- return 0;
-}
OpenPOWER on IntegriCloud