diff options
author | Akim Demaille <akim@lrde.epita.fr> | 2013-02-11 10:17:36 +0100 |
---|---|---|
committer | Akim Demaille <akim@lrde.epita.fr> | 2013-02-14 15:00:51 +0100 |
commit | fec5f3c0cc2c50a779dafb928fda105c1782446b (patch) | |
tree | 9d115299e1097ffe614f9fac1d5d6bfbd1afa7b6 /src/gram.c | |
parent | 9a9130f26d8df2c1fe2051c5881e0da804ba8e9c (diff) | |
download | bison-fec5f3c0cc2c50a779dafb928fda105c1782446b.tar.gz |
diagnostics: no longer pretty-print rules in error messages, carets suffice
* src/gram.c (grammar_rules_useless_report): Let -fcaret handle the
pretty-printing of the guilty rules.
(rule_print): Inline in its only use.
* tests/conflicts.at, tests/existing.at, tests/reduce.at,
* tests/regression.at: Adjust.
* NEWS: Document.
Diffstat (limited to 'src/gram.c')
-rw-r--r-- | src/gram.c | 33 |
1 files changed, 6 insertions, 27 deletions
@@ -125,13 +125,6 @@ rule_rhs_print_xml (rule const *r, FILE *out, int level) } } -static void -rule_print (rule const *r, FILE *out) -{ - fprintf (out, "%s:", r->lhs->tag); - rule_rhs_print (r, out); -} - void ritem_print (FILE *out) { @@ -289,8 +282,8 @@ grammar_dump (FILE *out, const char *title) rule_number r; for (r = 0; r < nrules + nuseless_productions; r++) { - fprintf (out, "%-5d ", r); - rule_print (&rules[r], out); + fprintf (out, "%-5d %s:", r, rules[r].lhs->tag); + rule_rhs_print (&rules[r], out); fprintf (out, "\n"); } } @@ -300,24 +293,10 @@ grammar_dump (FILE *out, const char *title) void grammar_rules_useless_report (const char *message) { - warnings w = Wother; - if (warnings_flag & w) - { - rule_number r; - for (r = 0; r < nrules ; ++r) - if (!rules[r].useful) - { - if (feature_flag & feature_caret) - complain (&rules[r].location, w, "%s", message); - else - { - complain (&rules[r].location, w | silent, "%s: ", message); - rule_print (&rules[r], stderr); - warnings_print_categories (w); - fprintf (stderr, "\n"); - } - } - } + rule_number r; + for (r = 0; r < nrules ; ++r) + if (!rules[r].useful) + complain (&rules[r].location, Wother, "%s", message); } void |