parse.error: fix.

* data/bison.m4: Move code related to specific variables after the
	definition of the variable-maintaining macros so that we don't
	"invoke" b4_percent_define_check_values before it is defined.
This commit is contained in:
Akim Demaille
2009-06-29 14:41:13 +02:00
parent 2f5b478e4b
commit ad597a7877
2 changed files with 35 additions and 25 deletions

View File

@@ -1,3 +1,10 @@
2009-06-29 Akim Demaille <demaille@gostai.com>
parse.error: fix.
* data/bison.m4: Move code related to specific variables after the
definition of the variable-maintaining macros so that we don't
"invoke" b4_percent_define_check_values before it is defined.
2009-06-29 Akim Demaille <demaille@gostai.com>
variables: parse.error

View File

@@ -716,31 +716,6 @@ m4_define([b4_percent_define_if_define],
b4_percent_define_if_define_([$1], $[1], $[2])])
# b4_parse_assert_if([IF-ASSERTIONS-ARE-USED], [IF-NOT])
# b4_parse_trace_if([IF-DEBUG-TRACES-ARE-ENABLED], [IF-NOT])
# b4_lex_symbol_if([IF-YYLEX-RETURNS-A-COMPLETE-SYMBOL], [IF-NOT])
# b4_variant_if([IF-VARIANT-ARE-USED], [IF-NOT])
# ----------------------------------------------
b4_percent_define_if_define([lex_symbol])
b4_percent_define_if_define([locations]) # Whether locations are tracked.
b4_percent_define_if_define([parse.assert])
b4_percent_define_if_define([parse.trace])
b4_percent_define_if_define([variant])
# b4_error_verbose_if([IF-ERRORS-ARE-VERBOSE], [IF-NOT])
# ------------------------------------------------------
# Map %define parse.error "(simple|verbose)" to b4_error_verbose_if and
# b4_error_verbose_flag.
b4_percent_define_default([[parse.error]], [[simple]])
b4_percent_define_check_values([[[[parse.error]],
[[simple]], [[verbose]]]])
m4_case(b4_percent_define_get([[parse.error]]),
[simple], [m4_define([b4_error_verbose_flag], [[0]])],
[verbose], [m4_define([b4_error_verbose_flag], [[1]])])
b4_define_flag_if([error_verbose])
# b4_percent_define_check_values(VALUES)
# --------------------------------------
# Mimic muscle_percent_define_check_values in ../src/muscle_tab.h exactly
@@ -815,11 +790,39 @@ m4_define([b4_percent_code_ifdef],
[$3])])
## ------------------ ##
## Common variables. ##
## ------------------ ##
# Default values for %define.
# ---------------------------
# If the api.tokens.prefix, it is empty.
m4_percent_define_default([[api.tokens.prefix]], [[]])
# b4_parse_assert_if([IF-ASSERTIONS-ARE-USED], [IF-NOT])
# b4_parse_trace_if([IF-DEBUG-TRACES-ARE-ENABLED], [IF-NOT])
# b4_lex_symbol_if([IF-YYLEX-RETURNS-A-COMPLETE-SYMBOL], [IF-NOT])
# b4_variant_if([IF-VARIANT-ARE-USED], [IF-NOT])
# ----------------------------------------------
b4_percent_define_if_define([lex_symbol])
b4_percent_define_if_define([locations]) # Whether locations are tracked.
b4_percent_define_if_define([parse.assert])
b4_percent_define_if_define([parse.trace])
b4_percent_define_if_define([variant])
# b4_error_verbose_if([IF-ERRORS-ARE-VERBOSE], [IF-NOT])
# ------------------------------------------------------
# Map %define parse.error "(simple|verbose)" to b4_error_verbose_if and
# b4_error_verbose_flag.
b4_percent_define_default([[parse.error]], [[simple]])
b4_percent_define_check_values([[[[parse.error]],
[[simple]], [[verbose]]]])
m4_define([b4_error_verbose_flag],
m4_case(b4_percent_define_get([[parse.error]]),
[simple], [[0]],
[verbose], [[1]]))
b4_define_flag_if([error_verbose])
## ----------------------------------------------------------- ##