- rule_number_t *rp;
- fprintf (stderr, "\t%s derives\n", symbols[i]->tag);
- for (rp = derives[i]; *rp > 0; rp++)
- {
- item_number_t *rhsp;
- fprintf (stderr, "\t\t%d:", *rp);
- for (rhsp = rules[*rp].rhs; *rhsp >= 0; ++rhsp)
- fprintf (stderr, " %s", symbol_tag_get (symbols[*rhsp]));
- fprintf (stderr, " (rule %d)\n",
- rule_number_of_item_number (*rhsp) - 1);
- }
+ rule **rp;
+ fprintf (stderr, " %s derives\n", symbols[i]->tag);
+ for (rp = derives[i - ntokens]; *rp; ++rp)
+ {
+ fprintf (stderr, " %3d ", (*rp)->user_number);
+ rule_rhs_print (*rp, stderr);
+ fprintf (stderr, "\n");
+ }