+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.
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
#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>
]b4_parse_param_vars[
};
+
+]b4_lex_symbol_if([b4_yytranslate_definition])[
]b4_symbol_constructor_specializations[
]b4_namespace_close[
}
#endif // YYDEBUG
-]b4_yytranslate_definition[
+]b4_lex_symbol_if([], [b4_yytranslate_definition])[
]b4_namespace_close[
]b4_epilogue[]dnl