[clang] [compiler-rt] [ubsan] Display correct runtime messages for negative _BitInt (PR #93612)

via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 17 14:23:44 PDT 2024


================
@@ -3318,6 +3353,20 @@ llvm::Constant *CodeGenFunction::EmitCheckTypeDescriptor(QualType T) {
       DiagnosticsEngine::ak_qualtype, (intptr_t)T.getAsOpaquePtr(), StringRef(),
       StringRef(), std::nullopt, Buffer, std::nullopt);
 
+  if (IsBitInt) {
+    // The Structure is: 0 to end the string, 32 bit unsigned integer in target
+    // endianness, zero.
+    char s[6] = {'\0', '\0', '\0', '\0', '\0', '\0'};
+    const auto *EIT = T->getAs<BitIntType>();
----------------
earnol wrote:

Agreed. We already know the type is some sort of BitIntType.

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


More information about the cfe-commits mailing list