Revert 2009-12-30 change for undefined %prec token complaints.

That is, keep them as warnings because that should be sufficient
to satisfy POSIX without creating backward compatibility issues.
Suggested by Richard Stallman at
<http://lists.gnu.org/archive/html/bison-patches/2010-03/msg00033.html>.
* NEWS (2.5): Remove mention of complaint.
* src/reader.c (grammar_rule_check): Convert warning back to
complaint.
* tests/input.at (%prec's token must be defined): Update.
This commit is contained in:
Joel E. Denny
2010-04-30 14:41:07 -04:00
parent a7ddefd1c2
commit 02354690ee
4 changed files with 16 additions and 10 deletions

View File

@@ -1,3 +1,15 @@
2010-04-30 Joel E. Denny <joeldenny@joeldenny.org>
Revert 2009-12-30 change for undefined %prec token complaints.
That is, keep them as warnings because that should be sufficient
to satisfy POSIX without creating backward compatibility issues.
Suggested by Richard Stallman at
<http://lists.gnu.org/archive/html/bison-patches/2010-03/msg00033.html>.
* NEWS (2.5): Remove mention of complaint.
* src/reader.c (grammar_rule_check): Convert warning back to
complaint.
* tests/input.at (%prec's token must be defined): Update.
2010-04-25 Joel E. Denny <joeldenny@joeldenny.org>
build: don't require src/bison during bootstrap.

6
NEWS
View File

@@ -180,12 +180,6 @@ Bison News
discussion of how to suppress C preprocessor warnings about YYFAIL
being unused, see the Bison 2.4.2 NEWS entry.
** `%prec IDENTIFIER' requires IDENTIFIER to be defined separately.
As promised in Bison 2.4.2's NEWS entry, it is now an error if a token
that appears after a %prec directive is not defined by %token, %left,
%right, or %nonassoc. This is required by POSIX.
** Temporary hack for adding a semicolon to the user action.
Previously, Bison appended a semicolon to every user action for

View File

@@ -327,8 +327,8 @@ grammar_rule_check (const symbol_list *r)
if (r->ruleprec
&& r->ruleprec->tag[0] != '\'' && r->ruleprec->tag[0] != '"'
&& !r->ruleprec->declared && !r->ruleprec->prec)
complain_at (r->location, _("token for %%prec is not defined: %s"),
r->ruleprec->tag);
warn_at (r->location, _("token for %%prec is not defined: %s"),
r->ruleprec->tag);
}

View File

@@ -806,8 +806,8 @@ AT_DATA([[input.y]],
start: %prec PREC ;
]])
AT_BISON_CHECK([[input.y]], [[1]], [],
[[input.y:2.8-17: token for %prec is not defined: PREC
AT_BISON_CHECK([[input.y]], [[0]], [],
[[input.y:2.8-17: warning: token for %prec is not defined: PREC
]])
AT_CLEANUP