[clang-tools-extra] f10cee9 - [clang-tidy] Fix test failing on 32-bit architectures due to missing `__int128_t`

Danny Mösch via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 29 08:58:28 PDT 2022


Author: Danny Mösch
Date: 2022-03-29T17:58:12+02:00
New Revision: f10cee91ae07022e602d6a47e504e86796d49a7d

URL: https://github.com/llvm/llvm-project/commit/f10cee91ae07022e602d6a47e504e86796d49a7d
DIFF: https://github.com/llvm/llvm-project/commit/f10cee91ae07022e602d6a47e504e86796d49a7d.diff

LOG: [clang-tidy] Fix test failing on 32-bit architectures due to missing `__int128_t`

This was caused by ff60af91ac0bbab12dd5ff5dc9b78bc1636f2d86. The reason for the failure is that
the type `__int128_t` is not available on 32-bit architectures. So just exclude the test case if
128-bit integers are not available.

Added: 
    

Modified: 
    clang-tools-extra/test/clang-tidy/checkers/bugprone-sizeof-expression.cpp

Removed: 
    


################################################################################
diff  --git a/clang-tools-extra/test/clang-tidy/checkers/bugprone-sizeof-expression.cpp b/clang-tools-extra/test/clang-tidy/checkers/bugprone-sizeof-expression.cpp
index 605243cf7a782..c93a9382d14c9 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/bugprone-sizeof-expression.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/bugprone-sizeof-expression.cpp
@@ -172,10 +172,7 @@ int Foo() { int A[T]; return sizeof(T); }
 template <typename T>
 int Bar() { T A[5]; return sizeof(A[0]) / sizeof(T); }
 // CHECK-MESSAGES: :[[@LINE-1]]:28: warning: suspicious usage of sizeof pointer 'sizeof(T)/sizeof(T)'
-template <__int128_t N> 
-bool Baz() { return sizeof(A) < N; }
-// CHECK-MESSAGES: :[[@LINE-1]]:21: warning: suspicious comparison of 'sizeof(expr)' to a constant
-int Test3() { return Foo<42>() + Bar<char>() + Baz<-1>(); }
+int Test3() { return Foo<42>() + Bar<char>(); }
 
 static const char* kABC = "abc";
 static const wchar_t* kDEF = L"def";
@@ -289,6 +286,13 @@ int Test6() {
   return sum;
 }
 
+#ifdef __SIZEOF_INT128__
+template <__int128_t N> 
+bool Baz() { return sizeof(A) < N; }
+// CHECK-MESSAGES: :[[@LINE-1]]:21: warning: suspicious comparison of 'sizeof(expr)' to a constant
+bool Test7() { return Baz<-1>(); }
+#endif
+
 int ValidExpressions() {
   int A[] = {1, 2, 3, 4};
   static const char str[] = "hello";


        


More information about the cfe-commits mailing list