]> git.saurik.com Git - bison.git/commitdiff
Do not allow identifiers that start with a negative number.
authorAlex Rozenman <rozenman@gmail.com>
Wed, 5 Jan 2011 13:47:25 +0000 (15:47 +0200)
committerAlex Rozenman <rozenman@gmail.com>
Wed, 5 Jan 2011 14:19:03 +0000 (16:19 +0200)
Reported by Paul Hilfinger as a side effect of named references
support at
<http://lists.gnu.org/archive/html/bug-bison/2011-01/msg00000.html>.
Suggested by Paul Eggert.
* src/scan-code.l ({letter}, {id}): Adjust lexical definitions.
* src/scan-gram.l ({letter}, {id}): Likewise.

ChangeLog
src/scan-code.l
src/scan-gram.l

index 6d83321911c72bdec9144b280d2af482da629e4c..b23c971541ff1f19feceaea753aadde0db9954a3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2011-01-05  Alex Rozenman  <rozenman@gmail.com>
+
+       Do not allow identifiers that start with a negative number.
+       Reported by Paul Hilfinger as a side effect of named references
+       support at
+       <http://lists.gnu.org/archive/html/bug-bison/2011-01/msg00000.html>.
+       Suggested by Paul Eggert.
+       * src/scan-code.l ({letter}, {id}): Adjust lexical definitions.
+       * src/scan-gram.l ({letter}, {id}): Likewise.
+
 2011-01-03  Joel E. Denny  <joeldenny@joeldenny.org>
 
        * ChangeLog (2011-01-02): improve description.
index a5f570d790e09705351d26fba452c950a629dd26..ffc8b5d4173d394c3fa7fd5861da6e20a83831ac 100644 (file)
@@ -85,8 +85,8 @@ splice         (\\[ \f\t\v]*\n)*
 /* C style identifier. Must start with letter. Will be used for
    named symbol references. Shall be kept synchronized with
    scan-gram.l "letter" and "id". */
-letter   [-.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_]
-id       {letter}({letter}|[0-9])*
+letter   [.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_]
+id       -*(-|{letter}({letter}|[-0-9])*)
 ref      -?[0-9]+|{id}|"["{id}"]"|"$"
 
 %%
index b3a50988f4af0afef2ed89b325f935286aa21995..41291812e82dfed912a7c05a8df9611773c48696 100644 (file)
@@ -118,8 +118,8 @@ static void unexpected_newline (boundary, char const *);
  /* Bracketed identifiers support. */
 %x SC_BRACKETED_ID SC_RETURN_BRACKETED_ID
 
-letter   [-.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_]
-id       {letter}({letter}|[0-9])*
+letter   [.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_]
+id       -*(-|{letter}({letter}|[-0-9])*)
 directive %{id}
 int      [0-9]+