]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
Do not allow identifiers that start with a dash.
[bison.git] / ChangeLog
index 2fa9b5d5f9bb4fb7d5844fcfb30394479f88aeb2..1dacd346097e9318b48467dc6cdba0cccf40502e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,136 @@
-2010-12-19  Joel E. Denny  <jdenny@clemson.edu>
+2011-01-29  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       Do not allow identifiers that start with a dash.
+       This cleans up our previous fixes for a bug whereby Bison
+       discarded `.field' in `$-1.field'.  The previous fixes were less
+       restrictive about where a dash could appear in an identifier, but
+       the restrictions were hard to explain.  That bug was reported and
+       this final fix was originally suggested by Paul Hilfinger.  This
+       also fixes a remaining bug reported by Paul Eggert whereby Bison
+       parses `%token ID -123' as `%token ID - 123' and handles `-' as an
+       identifier.  Now, `-' cannot be an identifier.  Discussed in
+       threads beginning at
+       <http://lists.gnu.org/archive/html/bug-bison/2011-01/msg00000.html>,
+       <http://lists.gnu.org/archive/html/bug-bison/2011-01/msg00004.html>.
+       * NEWS (2.5): Update entry describing the dash extension to
+       grammar symbol names.  Also, move that entry before the named
+       references entry because the latter mentions the former.
+       * doc/bison.texinfo (Symbol): Update documentation for symbol
+       names.  As suggested by Paul Eggert, mention the effect of periods
+       and dashes on named references.
+       (Decl Summary): Update documentation for unquoted %define values,
+       which, as a side effect, can no longer start with dashes either.
+       * src/scan-code.l (id): Implement.
+       * src/scan-gram.l (id): Implement.
+       * tests/actions.at (Exotic Dollars): Extend test group to exercise
+       bug reported by Paul Hilfinger.
+       * tests/input.at (Symbols): Update test group, and extend to
+       exercise bug reported by Paul Eggert.
+       * tests/named-refs.at (Stray symbols in brackets): Update test
+       group.
+       ($ or @ followed by . or -): Likewise.
+       * tests/regression.at (Invalid inputs): Likewise.
+
+2011-01-24  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       * data/yacc.c: Fix last apostrophe warning from xgettext.
+
+2011-01-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix minor problems encountered by a fresh bootstrap.
+       * data/glr.c, data/yacc.c: Do not use apostrophes in '#' comments,
+       as they confuse xgettext, which tries to parse them as C character
+       constants in a preprocessor directive.
+       * data/yacc.c (yy_lac): Don't use printf %d format on *yyesp, as
+       that expression might not promote to int on some platforms.
+       * src/parse-gram.c, src/parse-gram.h: Regenerate.
+
+2011-01-09  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       Improve error messages for `$' or `@' followed by `.' or `-'.
+       Previously, for this special case of an invalid reference, the
+       usual "symbol not found in production:" was printed.  However,
+       because the symbol name was parsed as the empty string, that
+       message was followed immediately by a newline instead of a symbol
+       name.  In reality, this is a syntax error, so the reference is
+       invalid regardless of the symbols actually appearing in the
+       production.  Discussed at
+       <http://lists.gnu.org/archive/html/bison-patches/2011-01/msg00012.html>.
+       * src/scan-code.l (parse_ref): Report the above case as a syntax
+       error.  Other than that, continue to handle this case like any
+       other invalid reference that Bison manages to parse because
+       "possibly meant" messages can still be helpful to the user.
+       * tests/named-refs.at ($ or @ followed by . or -): New test group.
+
+2011-01-08  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       doc: don't use @acronym.
+       Lately, many GNU packages are dropping it.  See
+       <http://lists.gnu.org/archive/html/bison-patches/2011-01/msg00003.html>.
+       * doc/bison.texinfo: Remove all uses.
+
+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.
+
+2011-01-03  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       maint: don't update copyright years in bootstrap.
+       * .x-update-copyright: Add entry for bootstrap.
+       * bootstrap: Remove 2011 from copyright years.  The bootstrap
+       version we're currently using comes from an older version of
+       gnulib.
+       * bootstrap.conf (bootstrap_sync): Add comments explaining this
+       issue.
+
+2011-01-02  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       maint: run "make update-copyright".
+
+2011-01-02  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       maint: prepare to use year ranges in copyright notices.
+       * README (Copyright statements): New section explaining the range
+       notation.  The GNU maintainers document requires this explanation:
+       <http://www.gnu.org/prep/maintain/maintain.html#Copyright-Notices>.
+       I copied our explanation from coreutils.
+       * build-aux/update-b4-copyright: Revert 2010-06-17 changes that
+       disabled Bison's automated use of ranges.
+       * cfg.mk (update-copyright-env): Likewise.
+
+2011-01-02  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       Correct my email address.
+       * ChangeLog: In all recent entries.
+       * THANKS (Joel E. Denny): Here.
+
+2010-12-19  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       doc: cleanup.
+       * NEWS (2.5): Try to sort entries according to how interesting
+       users might find them.
+
+2010-12-19  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       doc: cleanup.
+       * NEWS (2.5): Make some minor improvements to wording, and format
+       entries more consistently.
+       * doc/bison.texinfo (Language and Grammar): Point out that IELR
+       and canonical LR are experimental features.
+       (Decl Summary): In list of %define variables, make wording more
+       consistent.  Improve discussion of using LALR for GLR.
+
+2010-12-19  Joel E. Denny  <joeldenny@joeldenny.org>
 
        parse.lac: document.
        * NEWS (2.5): Add entry for LAC, and mention LAC in entry for
@@ -9,7 +141,7 @@
        for parse.lac.
        (Glossary): Add entry for LAC.
 
-2010-12-11  Joel E. Denny  <jdenny@clemson.edu>
+2010-12-11  Joel E. Denny  <joeldenny@joeldenny.org>
 
        parse.lac: implement exploratory stack reallocations.
        * data/yacc.c: Rename %define variable parse.lac.es-capacity to
        (LAC: Memory exhaustion): Update to use YYMAXDEPTH and
        parse.lac.es-capacity-initial.
 
-2010-12-11  Joel E. Denny  <jdenny@clemson.edu>
+2010-12-11  Joel E. Denny  <joeldenny@joeldenny.org>
 
        parse.lac: implement as %define variable.
        LAC = lookahead correction.  See discussion at
        * tests/regression.at (LAC: Exploratory stack): New test group.
        (LAC: Memory exhaustion): New test group.
 
-2010-11-21  Joel E. Denny  <jdenny@clemson.edu>
+2010-11-21  Joel E. Denny  <joeldenny@joeldenny.org>
 
        build: use gnulib's new bootstrap_sync option.
        Now, whenever we update bison's copy of gnulib, bootstrap will
        * bootstrap.conf (bootstrap_sync): Set to true.
        * gnulib: Update to latest so bootstrap is in sync now.
 
-2010-11-07  Joel E. Denny  <jdenny@clemson.edu>
+2010-11-07  Joel E. Denny  <joeldenny@joeldenny.org>
 
        yysyntax_error: adjust prior fixes for branch-2.5's lalr1.cc.
        On master, there is no yychar in lalr1.cc, but there is on
        * tests/conflicts.at (%error-verbose and consistent errors):
        Extend to test yychar manipulation with lalr1.cc.
 
-2010-11-07  Joel E. Denny  <jdenny@clemson.edu>
+2010-11-07  Joel E. Denny  <joeldenny@joeldenny.org>
 
        yysyntax_error: fix for consistent error with lookahead.
        * NEWS (2.5): Document.
        (AT_BISON_OPTION_POPDEFS): Pop it.
        (AT_FULL_COMPILE): Extend to handle Java.
 
-2010-11-07  Joel E. Denny  <jdenny@clemson.edu>
+2010-11-07  Joel E. Denny  <joeldenny@joeldenny.org>
 
        yysyntax_error: more preparation for readability of next patch.
        There are no behavioral changes here.
        * tests/conflicts.at (%error-verbose and consistent errors):
        Reorganize.
 
-2010-11-07  Joel E. Denny  <jdenny@clemson.edu>
+2010-11-07  Joel E. Denny  <joeldenny@joeldenny.org>
 
        yysyntax_error: prepare for readability of next patches.
        These are purely whitespace changes that result in ugly code
 
        -----
 
-       Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996,
-       1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-       2008, 2009, 2010 Free Software Foundation, Inc.
+       Copyright (C) 1987-1988, 1991-2011 Free Software Foundation,
+       Inc.
 
        Copying and distribution of this file, with or without
        modification, are permitted provided the copyright notice and this