- for (i = 0; i < state->nlookaheads; ++i)
- if (state->lookaheads_rule[i]->prec
- && state->lookaheads_rule[i]->prec->prec
- && !bitset_disjoint_p (state->lookaheads[i], lookaheadset))
- {
- resolve_sr_conflict (state, i);
- break;
- }
+ for (i = 0; i < reds->num; ++i)
+ if (reds->rules[i]->prec && reds->rules[i]->prec->prec
+ && !bitset_disjoint_p (reds->lookahead_tokens[i], lookahead_set))
+ resolve_sr_conflict (s, i, errors, &nerrs);
+
+ if (nerrs)
+ {
+ /* Some tokens have been explicitly made errors. Allocate a
+ permanent errs structure for this state, to record them. */
+ state_errs_set (s, nerrs, errors);
+ }
+ if (obstack_object_size (&solved_conflicts_obstack))
+ {
+ obstack_1grow (&solved_conflicts_obstack, '\0');
+ s->solved_conflicts = obstack_finish (&solved_conflicts_obstack);
+ }