|
Last change
on this file since 80 was 2, checked in by bird, 23 years ago |
|
Initial revision
|
-
Property cvs2svn:cvs-rev
set to
1.1
-
Property svn:eol-style
set to
native
-
Property svn:executable
set to
*
|
|
File size:
842 bytes
|
| Line | |
|---|
| 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. */
|
|---|
| 5 |
|
|---|
| 6 | /* For some C++ compilers, "#define Sigarg_t ..." may be appropriate. */
|
|---|
| 7 |
|
|---|
| 8 | #include <signal.h>
|
|---|
| 9 |
|
|---|
| 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*/
|
|---|
| 20 |
|
|---|
| 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
|
|---|
| 26 |
|
|---|
| 27 | #define signal1(a,b) signal(a,(sig_pf)b)
|
|---|
| 28 |
|
|---|
| 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
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.