mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-16 15:53:03 +00:00
variables: accept dashes.
* data/bison.m4 (b4_percent_define_if_define_): Also map dashes to
underscores.
* src/scan-gram.l ({id}): Also accept dashes after the initial
letter.
({directive}): Use {id}.
* src/parse-gram.y: Comment and formatting changes.
* doc/bison.texinfo (Symbols): Adjust the lexical definitions of
symbols.
* src/complain.h, src/complain.c (yacc_at): New.
* src/symtab.c (symbol_new): Use yacc_at to report inappropriate
symbol names.
* src/output.c (token_definitions_output): Do not #define token
names with dashes.
This commit is contained in:
@@ -99,8 +99,8 @@ static void unexpected_newline (boundary, char const *);
|
||||
%x SC_STRING SC_CHARACTER
|
||||
|
||||
letter [.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_]
|
||||
id {letter}({letter}|[0-9])*
|
||||
directive %{letter}({letter}|[0-9]|-)*
|
||||
id {letter}({letter}|[0-9]|-)*
|
||||
directive %{id}
|
||||
int [0-9]+
|
||||
|
||||
/* POSIX says that a tag must be both an id and a C union member, but
|
||||
@@ -411,7 +411,7 @@ splice (\\[ \f\t\v]*\n)*
|
||||
unexpected_eof (token_start, "'");
|
||||
STRING_FINISH;
|
||||
loc->start = token_start;
|
||||
if (strlen(last_string) > 1)
|
||||
if (strlen (last_string) > 1)
|
||||
val->character = last_string[1];
|
||||
else
|
||||
val->character = last_string[0];
|
||||
|
||||
Reference in New Issue
Block a user