From 8a08df05966730f4fb2d5d95434e75a09a13f696 Mon Sep 17 00:00:00 2001 From: Frank Mehnert Date: Mon, 29 Jul 2024 13:55:27 +0200 Subject: libdl: properly cast parameters for %p format string specifier The "%p" format specifier requires a void pointer. Cast parameters of type ElfW(Addr) to 'void *'. This fixes warnings if _dl_if_debug_print() performs parameter type checking. Signed-off-by: Marcus Haehnel --- ldso/libdl/libdl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c index 37c4a876e..6e50cb087 100644 --- a/ldso/libdl/libdl.c +++ b/ldso/libdl/libdl.c @@ -972,11 +972,11 @@ static int do_dlclose(void *vhandle, int need_fini) end = (end + ADDR_ALIGN) & PAGE_ALIGN; start = start & ~ADDR_ALIGN; if (end > start) { - _dl_if_debug_print("unmapping: %s at %p with length: '%p' until %p\n", tpnt->libname, tpnt->mapaddr, end - start, tpnt->mapaddr + (end - start)); + _dl_if_debug_print("unmapping: %s at %p with length: '%p' until %p\n", tpnt->libname, (void *)tpnt->mapaddr, (void *)(end - start), (void *)(tpnt->mapaddr + (end - start))); DL_LIB_UNMAP (tpnt, end - start); } else { - _dl_if_debug_print("NOT unmapping: %s at %p. startlibname, tpnt->mapaddr, start, end); + _dl_if_debug_print("NOT unmapping: %s at %p. startlibname, (void *)tpnt->mapaddr, (void *)start, (void *)end); } /* Free elements in RTLD_LOCAL scope list */ for (runp = tpnt->rtld_local; runp; runp = tmp) { -- cgit v1.2.3