mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
Define yytranslate in the header for lex_symbol.
* data/lalr1.cc: Move the invocation of b4_yytranslate_definition into the header file when using %define lex_symbol. (yytranslate_): Declare inline.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2008-11-13 Akim Demaille <demaille@gostai.com>
|
||||
|
||||
Define yytranslate in the header for lex_symbol.
|
||||
* data/lalr1.cc: Move the invocation of b4_yytranslate_definition
|
||||
into the header file when using %define lex_symbol.
|
||||
(yytranslate_): Declare inline.
|
||||
|
||||
2008-11-13 Akim Demaille <demaille@gostai.com>
|
||||
|
||||
Define the constructors of symbol_type in b4_symbol_constructor_definitions.
|
||||
|
||||
@@ -233,6 +233,7 @@ m4_define([b4_symbol_constructor_specialization_],
|
||||
b4_args(b4_symbol_if([$1], [has_type],
|
||||
[const b4_symbol([$1], [type])& v]),
|
||||
b4_locations_if([const location_type& l])));
|
||||
|
||||
])])])
|
||||
|
||||
# b4_symbol_constructor_specializations
|
||||
@@ -739,7 +740,7 @@ m4_ifdef([b4_stype],
|
||||
#endif
|
||||
|
||||
/// Convert a scanner token number \a t to a symbol number.
|
||||
static token_number_type yytranslate_ (]b4_lex_symbol_if([token_type], [int])[ t);
|
||||
static inline token_number_type yytranslate_ (]b4_lex_symbol_if([token_type], [int])[ t);
|
||||
|
||||
/// A complete symbol, with its type.
|
||||
template <typename Exact>
|
||||
@@ -873,6 +874,8 @@ m4_ifdef([b4_stype],
|
||||
|
||||
]b4_parse_param_vars[
|
||||
};
|
||||
|
||||
]b4_lex_symbol_if([b4_yytranslate_definition])[
|
||||
]b4_symbol_constructor_specializations[
|
||||
]b4_namespace_close[
|
||||
|
||||
@@ -1614,7 +1617,7 @@ b4_error_verbose_if([int yystate, int yytoken],
|
||||
}
|
||||
#endif // YYDEBUG
|
||||
|
||||
]b4_yytranslate_definition[
|
||||
]b4_lex_symbol_if([], [b4_yytranslate_definition])[
|
||||
]b4_namespace_close[
|
||||
|
||||
]b4_epilogue[]dnl
|
||||
|
||||
Reference in New Issue
Block a user