2001-08-03 Daniel Berlin <dan@cgsoftware.com>
[official-gcc.git] / libf2c / libF77 / signal1.h0
bloba383774b82d2f53661d1119f093aec1e2409b401
1 /* You may need to adjust the definition of signal1 to supply a */
2 /* cast to the correct argument type.  This detail is system- and */
3 /* compiler-dependent.   The #define below assumes signal.h declares */
4 /* type SIG_PF for the signal function's second argument. */
6 /* For some C++ compilers, "#define Sigarg_t ..." may be appropriate. */
8 #include <signal.h>
10 #ifndef Sigret_t
11 #define Sigret_t void
12 #endif
13 #ifndef Sigarg_t
14 #ifdef KR_headers
15 #define Sigarg_t
16 #else
17 #define Sigarg_t int
18 #endif
19 #endif /*Sigarg_t*/
21 #ifdef USE_SIG_PF       /* compile with -DUSE_SIG_PF under IRIX */
22 #define sig_pf SIG_PF
23 #else
24 typedef Sigret_t (*sig_pf)(Sigarg_t);
25 #endif
27 #define signal1(a,b) signal(a,(sig_pf)b)
29 #ifdef __cplusplus
30 #define Sigarg ...
31 #define Use_Sigarg
32 #else
33 #define Sigarg Int n
34 #define Use_Sigarg n = n        /* shut up compiler warning */
35 #endif