1999-04-16 03:35:26 +02:00
|
|
|
/* Test GDB dealing with stuff like stepping into sigtramp. */
|
|
|
|
|
|
|
|
#include <signal.h>
|
1999-06-28 18:06:02 +02:00
|
|
|
#include <unistd.h>
|
1999-04-16 03:35:26 +02:00
|
|
|
|
|
|
|
|
|
|
|
static int count = 0;
|
|
|
|
|
1999-06-28 18:06:02 +02:00
|
|
|
static void
|
|
|
|
handler (int sig)
|
1999-04-16 03:35:26 +02:00
|
|
|
{
|
|
|
|
signal (sig, handler);
|
|
|
|
++count;
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
func1 ()
|
|
|
|
{
|
|
|
|
++count;
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
func2 ()
|
|
|
|
{
|
|
|
|
++count;
|
|
|
|
}
|
|
|
|
|
|
|
|
int
|
|
|
|
main ()
|
|
|
|
{
|
|
|
|
#ifdef SIGALRM
|
|
|
|
signal (SIGALRM, handler);
|
|
|
|
#endif
|
|
|
|
#ifdef SIGUSR1
|
|
|
|
signal (SIGUSR1, handler);
|
|
|
|
#endif
|
|
|
|
alarm (1);
|
|
|
|
++count; /* first */
|
|
|
|
alarm (1);
|
|
|
|
++count; /* second */
|
|
|
|
func1 ();
|
|
|
|
alarm (1);
|
|
|
|
func2 ();
|
|
|
|
return count;
|
|
|
|
}
|