diff options
author | Rich Felker <dalias@aerifal.cx> | 2018-09-06 11:15:15 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2018-09-12 14:34:20 -0400 |
commit | c221d3e5862e249b03aa7569d5fec6389294fb22 (patch) | |
tree | 227098b1eefa6036f39a05941632771db54cf2b6 /src/linux | |
parent | eeb6f7742506b08692f745c7f588d046f1aa8214 (diff) | |
download | musl-c221d3e5862e249b03aa7569d5fec6389294fb22.zip musl-c221d3e5862e249b03aa7569d5fec6389294fb22.tar.gz musl-c221d3e5862e249b03aa7569d5fec6389294fb22.tar.bz2 |
fix issues from public functions defined without declaration visible
policy is that all public functions which have a public declaration
should be defined in a context where that public declaration is
visible, to avoid preventable type mismatches.
an audit performed using GCC's -Wmissing-declarations turned up the
violations corrected here. in some cases the public header had not
been included; in others, a feature test macro needed to make the
declaration visible had been omitted.
in the case of gethostent and getnetent, the omission seems to have
been intentional, as a hack to admit a single stub definition for both
functions. this kind of hack is no longer acceptable; it's UB and
would not fly with LTO or advanced toolchains. the hack is undone to
make exposure of the declarations possible.
Diffstat (limited to 'src/linux')
-rw-r--r-- | src/linux/brk.c | 2 | ||||
-rw-r--r-- | src/linux/clone.c | 2 | ||||
-rw-r--r-- | src/linux/sbrk.c | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/src/linux/brk.c b/src/linux/brk.c index ffdbbd5..a6173e0 100644 --- a/src/linux/brk.c +++ b/src/linux/brk.c @@ -1,3 +1,5 @@ +#define _BSD_SOURCE +#include <unistd.h> #include <errno.h> #include "syscall.h" diff --git a/src/linux/clone.c b/src/linux/clone.c index b9e5594..8c1af7d 100644 --- a/src/linux/clone.c +++ b/src/linux/clone.c @@ -1,5 +1,7 @@ +#define _GNU_SOURCE #include <stdarg.h> #include <unistd.h> +#include <sched.h> #include "pthread_impl.h" #include "syscall.h" diff --git a/src/linux/sbrk.c b/src/linux/sbrk.c index 1e82d64..bb86630 100644 --- a/src/linux/sbrk.c +++ b/src/linux/sbrk.c @@ -1,3 +1,5 @@ +#define _BSD_SOURCE +#include <unistd.h> #include <stdint.h> #include <errno.h> #include "syscall.h" |