| static int next_buffer = 0; | |
| void bar (void); | |
| static int t = 1, u = 0; | |
| long | |
| foo (unsigned int offset) | |
| { | |
| unsigned i, buffer; | |
| int x; | |
| char *data; | |
| i = u; | |
| if (i) | |
| return i * 0xce2f; | |
| buffer = next_buffer; | |
| data = (char *) (buffer * 0xce2f); | |
| for (i = 0; i < 2; i++) | |
| bar (); | |
| buffer = next_buffer; | |
| return buffer * 0xce2f + offset; | |
| } | |
| void | |
| bar (void) | |
| { | |
| } | |
| int | |
| main () | |
| { | |
| if (foo (3) != 3) | |
| __builtin_abort (); | |
| next_buffer = 1; | |
| if (foo (2) != 0xce2f + 2) | |
| __builtin_abort (); | |
| __builtin_exit (0); | |
| } |