diff --git a/src/core/surface/channel_init.c b/src/core/surface/channel_init.c
index 70ee2c5bbd63740030c2f9a3df03b016639fc0b1..538be84696e0c86ce329cca8c7419645cbccec3a 100644
--- a/src/core/surface/channel_init.c
+++ b/src/core/surface/channel_init.c
@@ -100,7 +100,7 @@ void grpc_channel_init_finalize(void) {
 void grpc_channel_init_shutdown(void) {
   for (int i = 0; i < GRPC_NUM_CHANNEL_STACK_TYPES; i++) {
     gpr_free(g_slots[i].slots);
-    g_slots[i].slots = (void *)0xdeadbeef;
+    g_slots[i].slots = (void *)(uintptr_t)0xdeadbeef;
   }
 }