399 |
} |
} |
400 |
} |
} |
401 |
|
|
|
shiftp = state_table[state].shift_table; |
|
|
|
|
402 |
/* Now see which tokens are allowed for shifts in this state. For |
/* Now see which tokens are allowed for shifts in this state. For |
403 |
them, record the shift as the thing to do. So shift is preferred |
them, record the shift as the thing to do. So shift is preferred |
404 |
to reduce. */ |
to reduce. */ |
405 |
|
shiftp = state_table[state].shift_table; |
406 |
|
|
407 |
if (shiftp) |
for (i = 0; i < shiftp->nshifts; i++) |
408 |
{ |
{ |
409 |
k = shiftp->nshifts; |
shift_state = shiftp->shifts[i]; |
410 |
|
if (!shift_state) |
411 |
for (i = 0; i < k; i++) |
continue; |
|
{ |
|
|
shift_state = shiftp->shifts[i]; |
|
|
if (!shift_state) |
|
|
continue; |
|
412 |
|
|
413 |
symbol = state_table[shift_state].accessing_symbol; |
symbol = state_table[shift_state].accessing_symbol; |
414 |
|
|
415 |
if (ISVAR (symbol)) |
if (ISVAR (symbol)) |
416 |
break; |
break; |
417 |
|
|
418 |
actrow[symbol] = shift_state; |
actrow[symbol] = shift_state; |
419 |
|
|
420 |
/* Do not use any default reduction if there is a shift for |
/* Do not use any default reduction if there is a shift for |
421 |
error */ |
error */ |
422 |
if (symbol == error_token_number) |
if (symbol == error_token_number) |
423 |
nodefault = 1; |
nodefault = 1; |
|
} |
|
424 |
} |
} |
425 |
|
|
|
errp = err_table[state]; |
|
|
|
|
426 |
/* See which tokens are an explicit error in this state (due to |
/* See which tokens are an explicit error in this state (due to |
427 |
%nonassoc). For them, record MINSHORT as the action. */ |
%nonassoc). For them, record MINSHORT as the action. */ |
428 |
|
errp = err_table[state]; |
429 |
|
|
430 |
if (errp) |
if (errp) |
431 |
{ |
{ |