[PATCH] xalloc-oversized: pacify gcc -Wuseless-cast

Paul Eggert <[email protected]>
Newsgroups gmane.comp.lib.gnulib.bugs
Message-ID <[email protected]>
* lib/xalloc-oversized.h (xalloc_oversized): 1 → 1u.
---
 ChangeLog              | 3 +++
 lib/xalloc-oversized.h | 6 ++++--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index ea72f7062e..33a67ff322 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2026-05-25  Paul Eggert  <[email protected]>
 
+	xalloc-oversized: pacify gcc -Wuseless-cast
+	* lib/xalloc-oversized.h (xalloc_oversized): 1 → 1u.
+
 	quotearg: be nicer on macOS etc
 	Problem reported by Bruno Haible in:
 	https://lists.gnu.org/r/bug-gnulib/2026-05/msg00150.html
diff --git a/lib/xalloc-oversized.h b/lib/xalloc-oversized.h
index cecdaec51e..96c5f16570 100644
--- a/lib/xalloc-oversized.h
+++ b/lib/xalloc-oversized.h
@@ -43,10 +43,12 @@
    : malloc (N * (size_t) S)).
 
    This is a macro, not a function, so that it works even if an
-   argument exceeds MAX (PTRDIFF_MAX, SIZE_MAX).  */
+   argument exceeds MAX (PTRDIFF_MAX, SIZE_MAX).  The 1u pacifies
+   -Wuseless-cast, and unlike a compound literal can appear in an
+   integer constant expression.  */
 #if 7 <= __GNUC__ && !defined __clang__ && PTRDIFF_MAX < SIZE_MAX
 # define xalloc_oversized(n, s) \
-   __builtin_mul_overflow_p (n, s, (ptrdiff_t) 1)
+   __builtin_mul_overflow_p (n, s, (ptrdiff_t) 1u)
 #elif 5 <= __GNUC__ && !defined __clang__ && !defined __ICC \
       && PTRDIFF_MAX < SIZE_MAX
 # define xalloc_oversized(n, s) \
-- 
2.54.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.