diff options
author | Dmitri Gribenko <gribozavr@gmail.com> | 2019-10-11 12:05:42 +0000 |
---|---|---|
committer | Dmitri Gribenko <gribozavr@gmail.com> | 2019-10-11 12:05:42 +0000 |
commit | 885c559369fe3d6323898c17787bd0454065fc34 (patch) | |
tree | ba43b987e078f4c2a033acc71ad3d7f1ee385a11 /clang-tools-extra/test/clang-tidy/bugprone-string-integer-assignment.cpp | |
parent | 9f6a873268e1ad9855873d9d8007086c0d01cf4f (diff) | |
download | bcm5719-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/bugprone-string-integer-assignment.cpp')
-rw-r--r-- | clang-tools-extra/test/clang-tidy/bugprone-string-integer-assignment.cpp | 109 |
1 files changed, 0 insertions, 109 deletions
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<typename T> -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<char> string; -typedef basic_string<wchar_t> 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<char>(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<MyArcaneChar> as; - as = 6; - as = static_cast<MyArcaneChar>(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<typename T> -struct S { - static constexpr T t = 0x8000; - std::string s; - void f(char c) { s += c | static_cast<int>(t); } -}; - -template S<int>; -} |