38 lines
716 B
C
38 lines
716 B
C
typedef __SIZE_TYPE__ size_t;
|
|
typedef unsigned long int reg_syntax_t;
|
|
struct re_pattern_buffer
|
|
{
|
|
unsigned char *buffer;
|
|
};
|
|
typedef enum
|
|
{
|
|
jump,
|
|
jump_n,
|
|
} re_opcode_t;
|
|
static int
|
|
foo (bufp)
|
|
struct re_pattern_buffer *bufp;
|
|
{
|
|
int mcnt;
|
|
unsigned char *p = bufp->buffer;
|
|
switch (((re_opcode_t) * p++))
|
|
{
|
|
unconditional_jump:
|
|
;
|
|
/* This test case caused an ICE because the statement insertion
|
|
routines were failing to update basic block boundaries. */
|
|
case jump:
|
|
do
|
|
{
|
|
(mcnt) = *(p) & 0377;
|
|
}
|
|
while (0);
|
|
(p) += 2;
|
|
p += mcnt;
|
|
case jump_n:
|
|
(mcnt) = *(p + 2) & 0377;
|
|
if (mcnt)
|
|
goto unconditional_jump;
|
|
}
|
|
}
|