variables: parse.error

Implement, document, and test the replacement of %error-verbose
by %define parse.error "verbose".

	* data/bison.m4 (b4_error_verbose_if): Reimplement to track the
	values of the parse.error variable.
	Make "simple" its default value.
	Check the valid values.
	* src/parse-gram.y: Use %define parse.error.
	(PERCENT_ERROR_VERBOSE): New token.
	Support it.
	* src/scan-gram.l: Support %error-verbose.

	* doc/bison.texinfo (Decl Summary): Replace the documentation of
	%define error-verbose by that of %define parse.error.
	* NEWS: Document it.

	* tests/actions.at, tests/calc.at: Use parse.error instead of
	%error-verbose.
This commit is contained in:
Akim Demaille
2009-06-18 10:00:36 +02:00
parent d70059ec73
commit 31b850d2d4
8 changed files with 119 additions and 62 deletions

View File

@@ -78,7 +78,7 @@ static int current_prec = 0;
%defines
%locations
%pure-parser
%error-verbose
%define parse.error "verbose"
%name-prefix="gram_"
%expect 0
@@ -134,6 +134,7 @@ static int current_prec = 0;
PERCENT_DEFAULT_PREC "%default-prec"
PERCENT_DEFINE "%define"
PERCENT_DEFINES "%defines"
PERCENT_ERROR_VERBOSE "%error-verbose"
PERCENT_EXPECT "%expect"
PERCENT_EXPECT_RR "%expect-rr"
PERCENT_FLAG "%<flag>"
@@ -243,6 +244,11 @@ prologue_declaration:
defines_flag = true;
spec_defines_file = xstrdup ($2);
}
| "%error-verbose"
{
muscle_percent_define_insert ("parse.error", @1, "verbose",
MUSCLE_PERCENT_DEFINE_GRAMMAR_FILE);
}
| "%expect" INT { expected_sr_conflicts = $2; }
| "%expect-rr" INT { expected_rr_conflicts = $2; }
| "%file-prefix" STRING { spec_file_prefix = $2; }

View File

@@ -194,7 +194,7 @@ splice (\\[ \f\t\v]*\n)*
"%defines" return PERCENT_DEFINES;
"%destructor" return PERCENT_DESTRUCTOR;
"%dprec" return PERCENT_DPREC;
"%error"[-_]"verbose" RETURN_PERCENT_FLAG("error-verbose");
"%error"[-_]"verbose" return PERCENT_ERROR_VERBOSE;
"%expect" return PERCENT_EXPECT;
"%expect"[-_]"rr" return PERCENT_EXPECT_RR;
"%file-prefix" return PERCENT_FILE_PREFIX;