- {
- bitset_copy (Vp, V);
- for (i = 1; i < nrules + 1; i++)
- {
- if (!bitset_test (Pp, i)
- && bitset_test (P, i)
- && bitset_test (V, rules[i].lhs->number))
- {
- for (r = rules[i].rhs; *r >= 0; r++)
- if (ISTOKEN (t = *r) || bitset_test (N, t - ntokens))
- bitset_set (Vp, t);
- bitset_set (Pp, i);
- }
- }
- if (bitset_equal_p (V, Vp))
- break;
- Vs = Vp;
- Vp = V;
- V = Vs;
- }
+ {
+ rule_number r;
+ bitset_copy (Vp, V);
+ for (r = 0; r < nrules; r++)
+ {
+ if (!bitset_test (Pp, r)
+ && bitset_test (P, r)
+ && bitset_test (V, rules[r].lhs->number))
+ {
+ item_number *rhsp;
+ for (rhsp = rules[r].rhs; *rhsp >= 0; rhsp++)
+ if (ISTOKEN (*rhsp) || bitset_test (N, *rhsp - ntokens))
+ bitset_set (Vp, *rhsp);
+ bitset_set (Pp, r);
+ }
+ }
+ if (bitset_equal_p (V, Vp))
+ break;
+ Vs = Vp;
+ Vp = V;
+ V = Vs;
+ }