442 |
if (redp->num >= 1) |
if (redp->num >= 1) |
443 |
{ |
{ |
444 |
int j; |
int j; |
445 |
|
bitset_iterator biter; |
446 |
/* loop over all the rules available here which require |
/* loop over all the rules available here which require |
447 |
lookahead */ |
lookahead */ |
448 |
for (i = state->nlookaheads - 1; i >= 0; --i) |
for (i = state->nlookaheads - 1; i >= 0; --i) |
449 |
/* and find each token which the rule finds acceptable |
/* and find each token which the rule finds acceptable |
450 |
to come next */ |
to come next */ |
451 |
BITSET_EXECUTE (state->lookaheads[i], 0, j, |
BITSET_FOR_EACH (biter, state->lookaheads[i], j, 0) |
452 |
{ |
{ |
453 |
/* and record this rule as the rule to use if that |
/* and record this rule as the rule to use if that |
454 |
token follows. */ |
token follows. */ |
455 |
if (actrow[j] != 0) |
if (actrow[j] != 0) |
456 |
conflicted = conflrow[j] = 1; |
conflicted = conflrow[j] = 1; |
457 |
actrow[j] = -state->lookaheads_rule[i]->number; |
actrow[j] = -state->lookaheads_rule[i]->number; |
458 |
}); |
} |
459 |
} |
} |
460 |
|
|
461 |
/* Now see which tokens are allowed for shifts in this state. For |
/* Now see which tokens are allowed for shifts in this state. For |