gdb/testsuite/
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.base / signals.c
1 /* Test GDB dealing with stuff like stepping into sigtramp. */
2
3 #include <signal.h>
4 #include <unistd.h>
5
6 #ifdef __sh__
7 #define signal(a,b) /* Signals not supported on this target - make them go away */
8 #define alarm(a) /* Ditto for alarm() */
9 #endif
10
11 static int count = 0;
12
13 #ifdef PROTOTYPES
14 static void
15 handler (int sig)
16 #else
17 static void
18 handler (sig)
19 int sig;
20 #endif
21 {
22 signal (sig, handler);
23 ++count;
24 }
25
26 static void
27 func1 ()
28 {
29 ++count;
30 }
31
32 static void
33 func2 ()
34 {
35 ++count;
36 }
37
38 int
39 main ()
40 {
41 #ifdef usestubs
42 set_debug_traps();
43 breakpoint();
44 #endif
45 #ifdef SIGALRM
46 signal (SIGALRM, handler);
47 #endif
48 #ifdef SIGUSR1
49 signal (SIGUSR1, handler);
50 #endif
51 alarm (1);
52 ++count; /* first */
53 alarm (1);
54 ++count; /* second */
55 func1 ();
56 alarm (1);
57 func2 ();
58 return count;
59 }
This page took 0.057729 seconds and 4 git commands to generate.