[compiler-rt] [TSan] Fix tsan_rtl_access printf type warnings (PR #151508)

Dan Blackwell via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 31 05:43:31 PDT 2025


https://github.com/DanBlackwell created https://github.com/llvm/llvm-project/pull/151508

When compiling TSan I currently get a handful of warnings like this: "warning: format specifies type 'void *' but the argument has type 'X *'". This patch adds the necessary casts to fix them.

>From cb14be73870aa468dda82d1fe736845e8f45ba93 Mon Sep 17 00:00:00 2001
From: Dan Blackwell <dan_blackwell at apple.com>
Date: Thu, 31 Jul 2025 13:33:23 +0100
Subject: [PATCH] [TSan] Fix tsan_rtl_access printf type warnings

When compiling TSan I currently get a handful of warnings like this: "warning: format specifies type 'void *' but the argument has type 'X *'"
---
 compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp b/compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
index 487fa490636eb..77cba5f81e1b8 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
+++ b/compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
@@ -684,7 +684,7 @@ void MemoryAccessRangeT(ThreadState* thr, uptr pc, uptr addr, uptr size) {
     DCHECK(IsAppMem(addr + size - 1));
   }
   if (!IsShadowMem(shadow_mem)) {
-    Printf("Bad shadow start addr: %p (%p)\n", shadow_mem, (void*)addr);
+    Printf("Bad shadow start addr: %p (%p)\n", (void*)shadow_mem, (void*)addr);
     DCHECK(IsShadowMem(shadow_mem));
   }
 
@@ -693,12 +693,12 @@ void MemoryAccessRangeT(ThreadState* thr, uptr pc, uptr addr, uptr size) {
   RawShadow* shadow_mem_end =
       shadow_mem + rounded_size / kShadowCell * kShadowCnt;
   if (!IsShadowMem(shadow_mem_end - 1)) {
-    Printf("Bad shadow end addr: %p (%p)\n", shadow_mem_end - 1,
+    Printf("Bad shadow end addr: %p (%p)\n", (void*)(shadow_mem_end - 1),
            (void*)(addr + size - 1));
     Printf(
         "Shadow start addr (ok): %p (%p); size: 0x%zx; rounded_size: 0x%zx; "
         "kShadowMultiplier: %zx\n",
-        shadow_mem, (void*)addr, size, rounded_size, kShadowMultiplier);
+        (void*)shadow_mem, (void*)addr, size, rounded_size, kShadowMultiplier);
     DCHECK(IsShadowMem(shadow_mem_end - 1));
   }
 #endif



More information about the llvm-commits mailing list