aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix')
-rw-r--r--sysdeps/unix/sysv/linux/bits/sigaction.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/bits/sigaction.h b/sysdeps/unix/sysv/linux/bits/sigaction.h
index 523084bcf3..b357c45342 100644
--- a/sysdeps/unix/sysv/linux/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/bits/sigaction.h
@@ -25,6 +25,7 @@
struct sigaction
{
/* Signal handler. */
+#ifdef __USE_POSIX199309
union
{
/* Used if SA_SIGINFO is not set. */
@@ -33,8 +34,11 @@ struct sigaction
void (*sa_sigaction) __PMT ((int, siginfo_t *, void *));
}
__sigaction_handler;
-#define sa_handler __sigaction_handler.sa_handler
-#define sa_sigaction __sigaction_handler.sa_sigaction
+# define sa_handler __sigaction_handler.sa_handler
+# define sa_sigaction __sigaction_handler.sa_sigaction
+#else
+ __sighandler_t sa_handler;
+#endif
/* Additional set of signals to be blocked. */
__sigset_t sa_mask;