Update concepts branch to revision 131834
[official-gcc.git] / gcc / testsuite / gcc.c-torture / compile / 20030902-1.c
blob443b43921b8bb96af9d935182bdae5fb23971e84
1 typedef unsigned int size_t;
2 typedef unsigned long int reg_syntax_t;
3 struct re_pattern_buffer
5 unsigned char *buffer;
6 };
7 typedef enum
9 jump,
10 jump_n,
11 } re_opcode_t;
12 static int
13 foo (bufp)
14 struct re_pattern_buffer *bufp;
16 int mcnt;
17 unsigned char *p = bufp->buffer;
18 switch (((re_opcode_t) * p++))
20 unconditional_jump:
22 /* This test case caused an ICE because the statement insertion
23 routines were failing to update basic block boundaries. */
24 case jump:
27 (mcnt) = *(p) & 0377;
29 while (0);
30 (p) += 2;
31 p += mcnt;
32 case jump_n:
33 (mcnt) = *(p + 2) & 0377;
34 if (mcnt)
35 goto unconditional_jump;