gram: more debugging information

* src/gram.c (ritem_print): Show indices in ritem.
This commit is contained in:
Akim Demaille
2020-02-22 21:36:41 +01:00
parent f9b360663b
commit f7f2c99c28

View File

@@ -155,11 +155,22 @@ void
ritem_print (FILE *out) ritem_print (FILE *out)
{ {
fputs ("RITEM\n", out); fputs ("RITEM\n", out);
bool first = true;
for (int i = 0; i < nritems; ++i) for (int i = 0; i < nritems; ++i)
if (ritem[i] >= 0) {
fprintf (out, " %s", symbols[ritem[i]]->tag); if (first)
else {
fprintf (out, " (rule %d)\n", item_number_as_rule_number (ritem[i])); fprintf (out, " %d: ", i);
first = false;
}
if (ritem[i] >= 0)
fprintf (out, " %s", symbols[ritem[i]]->tag);
else
{
fprintf (out, " (rule %d)\n", item_number_as_rule_number (ritem[i]));
first = true;
}
}
fputs ("\n\n", out); fputs ("\n\n", out);
} }