diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/compile/pr25514.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr25514.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr25514.c b/gcc/testsuite/gcc.c-torture/compile/pr25514.c new file mode 100644 index 000000000..0bf5aa907 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr25514.c @@ -0,0 +1,24 @@ +struct node { + struct node *next; + int value; +}; + +struct node *current_node, global_list; + +void +bar (void) +{ + struct node *node, *next; + + node = current_node; + next = node->next; + if (node != &global_list) + current_node = next; + else + { + node = global_list.next; + global_list.value = node->value; + global_list.next = node->next; + } + foo (node); +} |