mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-21 18:23:03 +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>
|
2008-11-13 Akim Demaille <demaille@gostai.com>
|
||||||
|
|
||||||
Define the constructors of symbol_type in b4_symbol_constructor_definitions.
|
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],
|
b4_args(b4_symbol_if([$1], [has_type],
|
||||||
[const b4_symbol([$1], [type])& v]),
|
[const b4_symbol([$1], [type])& v]),
|
||||||
b4_locations_if([const location_type& l])));
|
b4_locations_if([const location_type& l])));
|
||||||
|
|
||||||
])])])
|
])])])
|
||||||
|
|
||||||
# b4_symbol_constructor_specializations
|
# b4_symbol_constructor_specializations
|
||||||
@@ -739,7 +740,7 @@ m4_ifdef([b4_stype],
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/// Convert a scanner token number \a t to a symbol number.
|
/// 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.
|
/// A complete symbol, with its type.
|
||||||
template <typename Exact>
|
template <typename Exact>
|
||||||
@@ -873,6 +874,8 @@ m4_ifdef([b4_stype],
|
|||||||
|
|
||||||
]b4_parse_param_vars[
|
]b4_parse_param_vars[
|
||||||
};
|
};
|
||||||
|
|
||||||
|
]b4_lex_symbol_if([b4_yytranslate_definition])[
|
||||||
]b4_symbol_constructor_specializations[
|
]b4_symbol_constructor_specializations[
|
||||||
]b4_namespace_close[
|
]b4_namespace_close[
|
||||||
|
|
||||||
@@ -1614,7 +1617,7 @@ b4_error_verbose_if([int yystate, int yytoken],
|
|||||||
}
|
}
|
||||||
#endif // YYDEBUG
|
#endif // YYDEBUG
|
||||||
|
|
||||||
]b4_yytranslate_definition[
|
]b4_lex_symbol_if([], [b4_yytranslate_definition])[
|
||||||
]b4_namespace_close[
|
]b4_namespace_close[
|
||||||
|
|
||||||
]b4_epilogue[]dnl
|
]b4_epilogue[]dnl
|
||||||
|
|||||||
Reference in New Issue
Block a user