From 0afbde4e68c1161a54f9593ecb5b66fe42aa0de4 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 14 Jul 2021 17:10:06 -0500 Subject: [PATCH] Pacify gcc -Woverflow more clearly * src/alloc.c (mark_maybe_pointer): Make it clearer that ANDing with UINTPTR_MAX is intended. Omit a now-unnecessary cast. --- src/alloc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/alloc.c b/src/alloc.c index ee3fd64a00..8edcd06c84 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -4764,7 +4764,9 @@ mark_maybe_pointer (void *p, bool symbol_only) from Emacs source code, it can occur in some cases. To fix this problem, the pdumper code should grok non-initial addresses, as the non-pdumper code does. */ - void *po = (void *) ((uintptr_t) p & (uintptr_t) VALMASK); + uintptr_t mask = VALMASK & UINTPTR_MAX; + uintptr_t masked_p = (uintptr_t) p & mask; + void *po = (void *) masked_p; char *cp = p; char *cpo = po; /* Don't use pdumper_object_p_precise here! It doesn't check the -- 2.25.1