From 885c559369fe3d6323898c17787bd0454065fc34 Mon Sep 17 00:00:00 2001 From: Dmitri Gribenko Date: Fri, 11 Oct 2019 12:05:42 +0000 Subject: [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 --- .../bugprone-string-integer-assignment.cpp | 109 --------------------- 1 file changed, 109 deletions(-) delete mode 100644 clang-tools-extra/test/clang-tidy/bugprone-string-integer-assignment.cpp (limited to 'clang-tools-extra/test/clang-tidy/bugprone-string-integer-assignment.cpp') diff --git a/clang-tools-extra/test/clang-tidy/bugprone-string-integer-assignment.cpp b/clang-tools-extra/test/clang-tidy/bugprone-string-integer-assignment.cpp deleted file mode 100644 index 18fe5ef4e5c..00000000000 --- a/clang-tools-extra/test/clang-tidy/bugprone-string-integer-assignment.cpp +++ /dev/null @@ -1,109 +0,0 @@ -// RUN: %check_clang_tidy %s bugprone-string-integer-assignment %t - -namespace std { -template -struct basic_string { - basic_string& operator=(T); - basic_string& operator=(basic_string); - basic_string& operator+=(T); - basic_string& operator+=(basic_string); - const T &operator[](int i) const; - T &operator[](int i); -}; - -typedef basic_string string; -typedef basic_string wstring; - -int tolower(int i); -int toupper(int i); -} - -int tolower(int i); -int toupper(int i); - -typedef int MyArcaneChar; - -constexpr char kCharConstant = 'a'; - -int main() { - std::string s; - std::wstring ws; - int x = 5; - const char c = 'c'; - - s = 6; -// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: an integer is interpreted as a character code when assigning {{.*}} [bugprone-string-integer-assignment] -// CHECK-FIXES: {{^}} s = '6';{{$}} - s = 66; -// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: an integer is interpreted as a chara -// CHECK-FIXES: {{^}} s = "66";{{$}} - s = x; -// CHECK-MESSAGES: :[[@LINE-1]]:7: warning: an integer is interpreted as a chara -// CHECK-FIXES: {{^}} s = std::to_string(x);{{$}} - s = 'c'; - s = static_cast(6); - -// += - ws += 6; -// CHECK-MESSAGES: :[[@LINE-1]]:9: warning: an integer is interpreted as a chara -// CHECK-FIXES: {{^}} ws += L'6';{{$}} - ws += 66; -// CHECK-MESSAGES: :[[@LINE-1]]:9: warning: an integer is interpreted as a chara -// CHECK-FIXES: {{^}} ws += L"66";{{$}} - ws += x; -// CHECK-MESSAGES: :[[@LINE-1]]:9: warning: an integer is interpreted as a chara -// CHECK-FIXES: {{^}} ws += std::to_wstring(x);{{$}} - ws += L'c'; - ws += (wchar_t)6; - - std::basic_string as; - as = 6; - as = static_cast(6); - as = 'a'; - - s += toupper(x); - s += tolower(x); - s += (std::tolower(x)); - - s += c & s[1]; - s += c ^ s[1]; - s += c | s[1]; - - s[x] += 1; - s += s[x]; - as += as[x]; - - // Likely character expressions. - s += x & 0xff; - s += 0xff & x; - s += x % 26; - s += 26 % x; - // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: an integer is interpreted as a chara - // CHECK-FIXES: {{^}} s += std::to_string(26 % x);{{$}} - s += c | 0x80; - s += c | 0x8000; - // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: an integer is interpreted as a chara - // CHECK-FIXES: {{^}} s += std::to_string(c | 0x8000);{{$}} - as += c | 0x8000; - - s += 'a' + (x % 26); - s += kCharConstant + (x % 26); - s += 'a' + (s[x] & 0xf); - s += (x % 10) + 'b'; - - s += x > 255 ? c : x; - s += x > 255 ? 12 : x; - // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: an integer is interpreted as a chara - // CHECK-FIXES: {{^}} s += std::to_string(x > 255 ? 12 : x);{{$}} -} - -namespace instantiation_dependent_exprs { -template -struct S { - static constexpr T t = 0x8000; - std::string s; - void f(char c) { s += c | static_cast(t); } -}; - -template S; -} -- cgit v1.2.3