aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr32355.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr32355.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr32355.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr32355.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr32355.c
new file mode 100644
index 000000000..e88cf5cf7
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/pr32355.c
@@ -0,0 +1,31 @@
+typedef struct
+{
+}
+__sigset_t;
+typedef struct
+{
+ char coredump;
+}
+EMode;
+extern EMode Mode;
+struct sigaction
+{
+ __sigset_t sa_mask;
+ int sa_flags;
+};
+doSignalsSetup (void)
+{
+ static const int signals[] = {
+ 1, 2 , 3, 4, 6, 8, 11, 13, 14, 15, 10, 12, 17, 7
+ };
+ unsigned int i, sig;
+ struct sigaction sa;
+ for (i = 0; i < sizeof (signals) / sizeof (int); i++)
+ {
+ sig = signals[i];
+ if (Mode.coredump && (sig == 4 || sig == 8))
+ continue;
+ sa.sa_flags = (sig == 17);
+ sigemptyset (&sa.sa_mask);
+ }
+}