Ensure pid_t gets defined.
[gnulib.git] / 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 type @code{pid_t} is not defined on some platforms:
27 MSVC 9.
28 @item
29 The signal @code{SIGPIPE} is not defined on some platforms:
30 mingw.
31 @item
32 The macro @code{SA_NODEFER} is not defined on some platforms:
33 Interix 3.5.
34 @item
35 The macros @code{SA_RESETHAND} and @code{SA_RESTART} are not defined
36 on some platforms:
37 NonStop.
38 @item
39 The type @code{sighandler_t} (a GNU extension) is not defined on most non-glibc
40 platforms:
41 MacOS X 10.5, FreeBSD 6.0, NetBSD 5.0, OpenBSD 3.8, AIX 5.1, HP-UX 11,
42 IRIX 6.5, OSF/1 5.1, Solaris 11 2010-11, Cygwin, mingw, Interix 3.5, BeOS.
43 @end itemize
44
45 Portability problems not fixed by Gnulib:
46 @itemize
47 @item
48 Many signals are not defined on some platforms:
49 mingw.
50 @item
51 The macros @code{SIGRTMIN} and @code{SIGRTMAX} expand to an expression of type
52 @code{long} instead of @code{int} on some platforms:
53 OSF/1 5.1.
54 @item
55 The macro @code{SIGBUS} is set to the same value as @code{SIGSEGV},
56 rather than being a distinct signal, on some platforms:
57 Haiku.
58 @end itemize