|
Message-Id: <580d6560aaf8ed1d7894f881de51a170cfa8ad73.1684922612.git.Jens.Gustedt@inria.fr> Date: Sun, 16 Apr 2023 22:41:30 +0200 From: Jens Gustedt <Jens.Gustedt@...ia.fr> To: musl@...ts.openwall.com Subject: [C23 implied 1/2] C23: update some legacy function pointers In C23, empty parameter lists loose their meaning as "function that may receive any number of parameters". When compiling with -std=c2x, there were three left-overs in musl that still used that. Change them to use the correct prototype, since it is available at all these places, anyhow. --- src/legacy/ftw.c | 2 +- src/thread/__syscall_cp.c | 4 +++- src/thread/pthread_cancel.c | 8 ++++++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/legacy/ftw.c b/src/legacy/ftw.c index e757fc6f..8e9e34d7 100644 --- a/src/legacy/ftw.c +++ b/src/legacy/ftw.c @@ -5,5 +5,5 @@ int ftw(const char *path, int (*fn)(const char *, const struct stat *, int), int /* The following cast assumes that calling a function with one * argument more than it needs behaves as expected. This is * actually undefined, but works on all real-world machines. */ - return nftw(path, (int (*)())fn, fd_limit, FTW_PHYS); + return nftw(path, (int (*)(const char *, const struct stat *, int, struct FTW *))fn, fd_limit, FTW_PHYS); } diff --git a/src/thread/__syscall_cp.c b/src/thread/__syscall_cp.c index 42a01674..d0b675e2 100644 --- a/src/thread/__syscall_cp.c +++ b/src/thread/__syscall_cp.c @@ -1,7 +1,9 @@ #include "pthread_impl.h" #include "syscall.h" -hidden long __syscall_cp_c(); +hidden long __syscall_cp_c(syscall_arg_t nr, + syscall_arg_t u, syscall_arg_t v, syscall_arg_t w, + syscall_arg_t x, syscall_arg_t y, syscall_arg_t z); static long sccp(syscall_arg_t nr, syscall_arg_t u, syscall_arg_t v, syscall_arg_t w, diff --git a/src/thread/pthread_cancel.c b/src/thread/pthread_cancel.c index 139a6fc8..2b8a8a76 100644 --- a/src/thread/pthread_cancel.c +++ b/src/thread/pthread_cancel.c @@ -3,7 +3,7 @@ #include "pthread_impl.h" #include "syscall.h" -hidden long __cancel(), __syscall_cp_asm(), __syscall_cp_c(); +hidden long __cancel(); long __cancel() { @@ -14,10 +14,14 @@ long __cancel() return -ECANCELED; } -long __syscall_cp_asm(volatile void *, syscall_arg_t, +hidden long __syscall_cp_asm(volatile void *, syscall_arg_t, syscall_arg_t, syscall_arg_t, syscall_arg_t, syscall_arg_t, syscall_arg_t, syscall_arg_t); +hidden long __syscall_cp_c(syscall_arg_t, + syscall_arg_t, syscall_arg_t, syscall_arg_t, + syscall_arg_t, syscall_arg_t, syscall_arg_t); + long __syscall_cp_c(syscall_arg_t nr, syscall_arg_t u, syscall_arg_t v, syscall_arg_t w, syscall_arg_t x, syscall_arg_t y, syscall_arg_t z) -- 2.34.1
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.