218 |
/* A token that was used in %prec should not be warned about. */ |
/* A token that was used in %prec should not be warned about. */ |
219 |
for (i = 1; i < nrules + 1; i++) |
for (i = 1; i < nrules + 1; i++) |
220 |
if (rules[i].precsym != 0) |
if (rules[i].precsym != 0) |
221 |
bitset_set (V1, rules[i].precsym); |
bitset_set (V1, rules[i].precsym->number); |
222 |
} |
} |
223 |
|
|
224 |
|
|
310 |
free (symbols_sorted + ntokens); |
free (symbols_sorted + ntokens); |
311 |
} |
} |
312 |
|
|
|
/* Replace all symbol numbers in valid data structures. */ |
|
|
|
|
|
for (i = 1; i < nrules + 1; i++) |
|
|
{ |
|
|
if (ISVAR (rules[i].precsym)) |
|
|
/* Can this happen? */ |
|
|
rules[i].precsym = nontermmap[rules[i].precsym]; |
|
|
} |
|
|
|
|
313 |
for (i = 0; i < nritems; ++i) |
for (i = 0; i < nritems; ++i) |
314 |
if (ISVAR (ritem[i])) |
if (ISVAR (ritem[i])) |
315 |
ritem[i] = nontermmap[ritem[i]]; |
ritem[i] = nontermmap[ritem[i]]; |
403 |
++rhs_count; |
++rhs_count; |
404 |
fprintf (out, "%3d (%2d, %2d, %2d, %2d-%2d) %2d ->", |
fprintf (out, "%3d (%2d, %2d, %2d, %2d-%2d) %2d ->", |
405 |
i - 1, |
i - 1, |
406 |
rules[i].prec, rules[i].assoc, rules[i].useful, |
rules[i].prec->prec, |
407 |
rules[i].rhs - ritem, rules[i].rhs - ritem + rhs_count - 1, |
rules[i].prec->assoc, |
408 |
|
rules[i].useful, |
409 |
|
rules[i].rhs - ritem, |
410 |
|
rules[i].rhs - ritem + rhs_count - 1, |
411 |
rules[i].lhs->number); |
rules[i].lhs->number); |
412 |
/* Dumped the RHS. */ |
/* Dumped the RHS. */ |
413 |
for (r = rules[i].rhs; *r >= 0; r++) |
for (r = rules[i].rhs; *r >= 0; r++) |