doc: Document NonStop portability issues.
[pspp] / doc / posix-headers / signal.texi
1 @node signal.h
2 @section @file{signal.h}
3
4 POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html}
5
6 Gnulib module: signal
7
8 Portability problems fixed by Gnulib:
9 @itemize
10 @item
11 @code{volatile sig_atomic_t} is rejected by older compilers on some
12 platforms:
13 AIX.
14 @item
15 @code{sigset_t} is only declared in <sys/types.h> on some platforms:
16 mingw.
17 @item
18 @code{struct sigaction} and @code{siginfo_t} are missing on some
19 platforms:
20 mingw.
21 @item
22 @code{struct sigaction} lacks the @code{sa_sigaction} member on some
23 platforms:
24 Irix 5.3, Interix 3.5.
25 @item
26 The signal @code{SIGPIPE} is not defined on some platforms:
27 mingw.
28 @item
29 The macro @code{SA_NODEFER} is not defined on some platforms:
30 Interix 3.5.
31 @item
32 The macros @code{SA_RESETHAND} and @code{SA_RESTART} are not defined
33 on some platforms:
34 NonStop.
35 @item
36 The type @code{sighandler_t} (a GNU extension) is not defined on most non-glibc
37 platforms:
38 MacOS X 10.5, FreeBSD 6.0, NetBSD 5.0, OpenBSD 3.8, AIX 5.1, HP-UX 11,
39 IRIX 6.5, OSF/1 5.1, Solaris 11 2010-11, Cygwin, mingw, Interix 3.5, BeOS.
40 @end itemize
41
42 Portability problems not fixed by Gnulib:
43 @itemize
44 @item
45 Many signals are not defined on some platforms:
46 mingw.
47 @item
48 The macros @code{SIGRTMIN} and @code{SIGRTMAX} expand to an expression of type
49 @code{long} instead of @code{int} on some platforms:
50 OSF/1 5.1.
51 @item
52 The macro @code{SIGBUS} is set to the same value as @code{SIGSEGV},
53 rather than being a distinct signal, on some platforms:
54 Haiku.
55 @end itemize