Daily bump.
[official-gcc.git] / libphobos / libdruntime / core / stdc / signal.d
blob13c6f9efbe80e25eba9e0182116be9c1cb1579ed
1 /**
2 * D header file for C99.
4 * $(C_HEADER_DESCRIPTION pubs.opengroup.org/onlinepubs/009695399/basedefs/_signal.h.html, _signal.h)
6 * Copyright: Copyright Sean Kelly 2005 - 2009.
7 * License: Distributed under the
8 * $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0).
9 * (See accompanying file LICENSE)
10 * Authors: Sean Kelly
11 * Source: $(DRUNTIMESRC core/stdc/_signal.d)
12 * Standards: ISO/IEC 9899:1999 (E)
15 module core.stdc.signal;
17 extern (C):
18 nothrow:
19 @nogc:
21 // this should be volatile
22 ///
23 alias int sig_atomic_t;
25 private alias void function(int) sigfn_t;
27 version (Posix)
29 ///
30 enum SIG_ERR = cast(sigfn_t) -1;
31 ///
32 enum SIG_DFL = cast(sigfn_t) 0;
33 ///
34 enum SIG_IGN = cast(sigfn_t) 1;
36 // standard C signals
37 ///
38 enum SIGABRT = 6; // Abnormal termination
39 ///
40 enum SIGFPE = 8; // Floating-point error
41 ///
42 enum SIGILL = 4; // Illegal hardware instruction
43 ///
44 enum SIGINT = 2; // Terminal interrupt character
45 ///
46 enum SIGSEGV = 11; // Invalid memory reference
47 ///
48 enum SIGTERM = 15; // Termination
50 else version (Windows)
52 ///
53 enum SIG_ERR = cast(sigfn_t) -1;
54 ///
55 enum SIG_DFL = cast(sigfn_t) 0;
56 ///
57 enum SIG_IGN = cast(sigfn_t) 1;
59 // standard C signals
60 ///
61 enum SIGABRT = 22; // Abnormal termination
62 ///
63 enum SIGFPE = 8; // Floating-point error
64 ///
65 enum SIGILL = 4; // Illegal hardware instruction
66 ///
67 enum SIGINT = 2; // Terminal interrupt character
68 ///
69 enum SIGSEGV = 11; // Invalid memory reference
70 ///
71 enum SIGTERM = 15; // Termination
74 ///
75 sigfn_t signal(int sig, sigfn_t func);
76 ///
77 int raise(int sig);