X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/0ce615753edfd7d1f8f1fe8670d4354b3d59d049..8d90395dd7aa01e6616cb46eddc1dbddafd8d9ee:/src/output.c diff --git a/src/output.c b/src/output.c index a06698ce..c5e9aab9 100644 --- a/src/output.c +++ b/src/output.c @@ -32,7 +32,7 @@ #include "files.h" #include "getargs.h" #include "gram.h" -#include "muscle_tab.h" +#include "muscle-tab.h" #include "output.h" #include "reader.h" #include "scan-code.h" /* max_left_semantic_context */ @@ -469,35 +469,20 @@ token_definitions_output (FILE *out) { symbol *sym = symbols[i]; int number = sym->user_token_number; + uniqstr id = symbol_id_get (sym); /* At this stage, if there are literal aliases, they are part of SYMBOLS, so we should not find symbols which are the aliases here. */ aver (number != USER_NUMBER_ALIAS); - /* Skip error token. */ - if (sym == errtoken) - continue; - - /* If this string has an alias, then it is necessarily the alias - which is to be output. */ - if (sym->alias) - sym = sym->alias; - - /* Don't output literal chars or strings (when defined only as a - string). Note that must be done after the alias resolution: - think about `%token 'f' "f"'. */ - if (sym->tag[0] == '\'' || sym->tag[0] == '\"') - continue; - - /* Don't #define nonliteral tokens whose names contain periods - or '$' (as does the default value of the EOF token). */ - if (strchr (sym->tag, '.') || strchr (sym->tag, '$')) - continue; - - fprintf (out, "%s[[[%s]], %d]", - sep, sym->tag, number); - sep = ",\n"; + /* 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); } @@ -702,7 +687,6 @@ prepare (void) /* Flags. */ MUSCLE_INSERT_BOOL ("defines_flag", defines_flag); MUSCLE_INSERT_BOOL ("glr_flag", glr_parser); - MUSCLE_INSERT_BOOL ("locations_flag", locations_flag); MUSCLE_INSERT_BOOL ("nondeterministic_flag", nondeterministic_parser); MUSCLE_INSERT_BOOL ("synclines_flag", !no_lines_flag); MUSCLE_INSERT_BOOL ("tag_seen_flag", tag_seen);