aboutsummaryrefslogtreecommitdiff
path: root/contrib/jemalloc
diff options
context:
space:
mode:
authorRyan Libby <rlibby@FreeBSD.org>2019-12-21 02:44:38 +0000
committerRyan Libby <rlibby@FreeBSD.org>2019-12-21 02:44:38 +0000
commit79457a8ad150d784f6c02c5e65e8b75c6836e651 (patch)
tree407a255b86d778e5a42fdf8c47e2a0f168018595 /contrib/jemalloc
parent47ce20aef1e636e601ef26a4bc7e05c64a000640 (diff)
downloadsrc-79457a8ad150d784f6c02c5e65e8b75c6836e651.tar.gz
src-79457a8ad150d784f6c02c5e65e8b75c6836e651.zip
jemalloc: pick from upstream: Fix GCC-9.1 warning with macro GET_ARG_NUMERIC
Pick 2d6d099fed05b1509e81e54458516528bfbbf38d from upstream jemalloc: Fix GCC-9.1 warning with macro GET_ARG_NUMERIC GCC-9.1 reports following error when trying to compile file src/malloc_io.c and with CFLAGS='-Werror' : src/malloc_io.c: In function ‘malloc_vsnprintf’: src/malloc_io.c:369:2: error: case label value exceeds maximum value for type [-Werror] 369 | case '?' | 0x80: \ | ^~~~ src/malloc_io.c:581:5: note: in expansion of macro ‘GET_ARG_NUMERIC’ 581 | GET_ARG_NUMERIC(val, 'p'); | ^~~~~~~~~~~~~~~ ... <snip> cc1: all warnings being treated as errors make: *** [Makefile:388: src/malloc_io.sym.o] Error 1 The warning is reported as by default the type 'char' is 'signed char' and or-ing 0x80 will turn the case label char negative which will be beyond the printable ascii range (0 - 127). The patch fixes this by explicitly casting the 'len' variable as unsigned char' inside the 'switch' statement so that value of expression " '?' | 0x80 " falls within the legal values of the variable 'len'. Discussed with: jasone (maintainer) Sponsored by: Dell EMC Isilon
Notes
Notes: svn path=/head/; revision=355975
Diffstat (limited to 'contrib/jemalloc')
-rw-r--r--contrib/jemalloc/src/malloc_io.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/jemalloc/src/malloc_io.c b/contrib/jemalloc/src/malloc_io.c
index c8802c700310..8ca9dbdb3089 100644
--- a/contrib/jemalloc/src/malloc_io.c
+++ b/contrib/jemalloc/src/malloc_io.c
@@ -376,7 +376,7 @@ malloc_vsnprintf(char *str, size_t size, const char *format, va_list ap) {
} \
} while (0)
#define GET_ARG_NUMERIC(val, len) do { \
- switch (len) { \
+ switch ((unsigned char)len) { \
case '?': \
val = va_arg(ap, int); \
break; \