Define make_symbol in the header.

To reach good performances these functions should be inlined (yet this is
to measure precisely).  To this end they must be available to the caller.

	* data/lalr1.cc (b4_symbol_constructor_definition_): Qualify
	location_type with the class name.
	Since will now be output in the header, declare "inline".
	No longer use b4_symbol_constructor_specializations, but
	b4_symbol_constructor_definitions in the header.
	Don't call it in the *.cc file.
This commit is contained in:
Akim Demaille
2008-08-28 11:50:09 +02:00
parent 1c4af3813e
commit 2c086d2959
2 changed files with 15 additions and 1 deletions

View File

@@ -1,3 +1,16 @@
2008-11-13 Akim Demaille <demaille@gostai.com>
Define make_symbol in the header.
To reach good performances these functions should be inlined (yet this is
to measure precisely). To this end they must be available to the caller.
* data/lalr1.cc (b4_symbol_constructor_definition_): Qualify
location_type with the class name.
Since will now be output in the header, declare "inline".
No longer use b4_symbol_constructor_specializations, but
b4_symbol_constructor_definitions in the header.
Don't call it in the *.cc file.
2008-11-13 Akim Demaille <demaille@gostai.com>
Define yytranslate in the header for lex_symbol.

View File

@@ -877,6 +877,7 @@ m4_ifdef([b4_stype],
]b4_lex_symbol_if([b4_yytranslate_definition])[
]b4_symbol_constructor_specializations[
]b4_lex_symbol_if([b4_symbol_constructor_definitions])[
]b4_namespace_close[
]b4_percent_define_flag_if([[global_tokens_and_yystype]],
@@ -1026,7 +1027,7 @@ b4_percent_code_get[]dnl
| Symbol types. |
`---------------*/
]b4_symbol_constructor_definitions[
]b4_lex_symbol_if([], [b4_symbol_constructor_definitions])[
// stack_symbol_type.
]b4_parser_class_name[::stack_symbol_type::stack_symbol_type ()