From 136fe9bede247d3273f5e82b5e856fa5c15a922c Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sat, 8 Dec 2018 13:49:15 +0100 Subject: suppress gcc 8 aliasing warnings function old new delta sigprocmask_SIG_SETMASK - 16 +16 wait_for_child_or_signal 221 213 -8 dowait 432 424 -8 Signed-off-by: Denys Vlasenko --- libbb/signals.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'libbb/signals.c') diff --git a/libbb/signals.c b/libbb/signals.c index 3f589321c..5a1544db7 100644 --- a/libbb/signals.c +++ b/libbb/signals.c @@ -31,6 +31,16 @@ int FAST_FUNC sigprocmask_allsigs(int how) return sigprocmask(how, &set, NULL); } +int FAST_FUNC sigprocmask_SIG_SETMASK(sigset_t *set) +{ + // Grr... gcc 8.1.1: + // "passing argument 3 to restrict-qualified parameter aliases with argument 2" + // dance around that... + sigset_t *oset FIX_ALIASING; + oset = set; + return sigprocmask(SIG_SETMASK, set, oset); +} + void FAST_FUNC bb_signals(int sigs, void (*f)(int)) { int sig_no = 0; -- cgit v1.2.3