diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/pr25737.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/pr25737.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr25737.c b/gcc/testsuite/gcc.c-torture/execute/pr25737.c new file mode 100644 index 000000000..9da63adce --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr25737.c @@ -0,0 +1,23 @@ +extern void abort (void); + +struct delay_block { + struct delay_block *succ; +}; + +static struct delay_block Timer_Queue; + +struct delay_block* time_enqueue (struct delay_block *d) +{ + struct delay_block *q = Timer_Queue.succ; + d->succ = (void *)0; + return Timer_Queue.succ; +} + +int main(void) +{ + Timer_Queue.succ = &Timer_Queue; + if (time_enqueue (&Timer_Queue) != (void*)0) + abort (); + return 0; +} + |