mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 04:13:03 +00:00
output: no longer use b4_tokens.
* data/glr.c, data/glr.cc, data/lalr1.cc, data/lalr1.java, data/yacc.c: Since the previous commit, b4_tokens_define and the like no longer need b4_tokens. * src/output.c (token_definitions_output): Remove.
This commit is contained in:
5
TODO
5
TODO
@@ -2,11 +2,6 @@
|
||||
** Variable names.
|
||||
What should we name `variant' and `lex_symbol'?
|
||||
|
||||
** Use b4_symbol in all the skeleton
|
||||
Move its definition in the more standard places and deploy it in other
|
||||
skeletons. Then remove the older system, including the tables
|
||||
generated by output.c
|
||||
|
||||
** Update the documentation on gnu.org
|
||||
|
||||
** Get rid of fake #lines [Bison: ...]
|
||||
|
||||
@@ -176,7 +176,7 @@ m4_define([b4_rhs_location],
|
||||
m4_define([b4_shared_declarations],
|
||||
[b4_declare_yydebug[
|
||||
]b4_percent_code_get([[requires]])[
|
||||
]b4_token_enums(b4_tokens)[
|
||||
]b4_token_enums[
|
||||
]b4_declare_yylstype[
|
||||
]b4_c_ansi_function_decl(b4_prefix[parse], [int], b4_parse_param)[
|
||||
]b4_percent_code_get([[provides]])[]dnl
|
||||
|
||||
@@ -300,7 +300,7 @@ b4_copyright([Skeleton interface for Bison GLR parsers in C++],
|
||||
|
||||
]dnl Redirections for glr.c.
|
||||
b4_percent_define_flag_if([[global_tokens_and_yystype]],
|
||||
[b4_token_defines(b4_tokens)])
|
||||
[b4_token_defines])
|
||||
[
|
||||
#ifndef ]b4_api_PREFIX[STYPE
|
||||
# define ]b4_api_PREFIX[STYPE ]b4_namespace_ref[::]b4_parser_class_name[::semantic_type
|
||||
|
||||
@@ -333,7 +333,7 @@ b4_public_types_define])[
|
||||
]b4_namespace_close[
|
||||
|
||||
]b4_percent_define_flag_if([[global_tokens_and_yystype]],
|
||||
[b4_token_defines(b4_tokens)
|
||||
[b4_token_defines
|
||||
|
||||
#ifndef ]b4_api_PREFIX[STYPE
|
||||
/* Redirection for backward compatibility. */
|
||||
|
||||
@@ -133,7 +133,7 @@ b4_locations_if([[
|
||||
/** Token returned by the scanner to signal the end of its input. */
|
||||
public static final int EOF = 0;
|
||||
|
||||
]b4_token_enums(b4_tokens)[
|
||||
]b4_token_enums[
|
||||
|
||||
]b4_locations_if([[/**
|
||||
* Method to retrieve the beginning position of the last scanned token.
|
||||
|
||||
@@ -284,7 +284,7 @@ m4_define([b4_shared_declarations],
|
||||
[b4_cpp_guard_open([b4_spec_defines_file])[
|
||||
]b4_declare_yydebug[
|
||||
]b4_percent_code_get([[requires]])[
|
||||
]b4_token_enums_defines(b4_tokens)[
|
||||
]b4_token_enums_defines[
|
||||
]b4_declare_yylstype[
|
||||
]b4_declare_yyparse[
|
||||
]b4_percent_code_get([[provides]])[
|
||||
|
||||
35
src/output.c
35
src/output.c
@@ -469,40 +469,6 @@ prepare_symbol_definitions (void)
|
||||
}
|
||||
|
||||
|
||||
/*--------------------------------------.
|
||||
| Output the tokens definition to OUT. |
|
||||
`--------------------------------------*/
|
||||
|
||||
static void
|
||||
token_definitions_output (FILE *out)
|
||||
{
|
||||
int i;
|
||||
char const *sep = "";
|
||||
|
||||
fputs ("m4_define([b4_tokens], \n[", out);
|
||||
for (i = 0; i < ntokens; ++i)
|
||||
{
|
||||
symbol *sym = symbols[i];
|
||||
int number = sym->user_token_number;
|
||||
uniqstr id = symbol_id_get (sym);
|
||||
|
||||
/* At this stage, if there are literal string aliases, they are
|
||||
part of SYMBOLS, so we should not find their aliased symbols
|
||||
here. */
|
||||
aver (number != USER_NUMBER_HAS_STRING_ALIAS);
|
||||
|
||||
/* Skip error token and tokens without identifier. */
|
||||
if (sym != errtoken && id)
|
||||
{
|
||||
fprintf (out, "%s[[[%s]], %d]",
|
||||
sep, id, number);
|
||||
sep = ",\n";
|
||||
}
|
||||
}
|
||||
fputs ("])\n\n", out);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
prepare_actions (void)
|
||||
{
|
||||
@@ -561,7 +527,6 @@ muscles_output (FILE *out)
|
||||
fputs ("m4_init()\n", out);
|
||||
merger_output (out);
|
||||
symbol_numbers_output (out);
|
||||
token_definitions_output (out);
|
||||
type_names_output (out);
|
||||
user_actions_output (out);
|
||||
// Must be last.
|
||||
|
||||
Reference in New Issue
Block a user