]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
* data/yacc.c: Fix last apostrophe warning from xgettext.
[bison.git] / ChangeLog
index 997d59ff60c31b14fd6bab1509a71b7f63fd8b62..ba91749bdff3a0c3a5ea035c6f3b923de6532cfe 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,155 @@
-2010-12-11  Joel E. Denny  <jdenny@clemson.edu>
+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>
+
+       Simplify handling of '.' and '-' after unbracketed named references.
+       * doc/bison.texinfo (Mid-Rule Actions): Mention that periods and
+       dashes make symbol names less convenient for named references.
+       * src/scan-code.l:
+       (handle_action_dollar): New arg textlen.  All callers changed.
+       (handle_action_at): Likewise.  Also, args are pointers to const.
+       (ref_tail_fields): Remove; no longer used.
+       (letter): Now includes '-' and '.', since this is for Bison
+       identifiers.
+       (id): Now the simpler traditional defn, since letters now include
+       '-' and '.'.
+       (c_letter, c_id): New defns.
+       (ref): Use c_id for unbracketed IDs.
+       (<SC_RULE_ACTION>): Simplify, now that the distinction between
+       Bison and unbracketed IDs are now in the regular expressions.
+       (VARIANT_BAD_BRACKETING): Remove.
+       (VARIANT_NOT_VISIBLE_FROM_MIDRULE): Renumber.
+       (find_prefix_end): Remove, replacing with ....
+       (identifier_matches): New function.
+       (variant_add): Use it.  Omit EXPLICIT_BRACKETING arg; no longer
+       needed.  CP arg is pointer to constant.  All callers changed.
+       (show_sub_messages): Remove args CP, EXPLICIT_BRACKETING, DOLLAR_OR_AT.
+       New arg TEXT.  All callers changed.  Do not worry about showing
+       trailing context.
+       (parse_ref): Args CP, RULE, TEXT are now pointers to const.  New
+       arg TEXTLEN.  Remove arg DOLLAR_OR_AT.  All callers changed.
+       Simplify code now that the regular expressions capture the
+       restrictions.
+       * src/scan-gram.l (letter, id): Adjust to match scan-code.l.
+       * src/symlist.c (symbol_list_null): Arg is now pointer to const.
+       * src/symlist.h: Likewise.
+       * tests/named-refs.at (Misleading references): These are now caught
+       by the C compiler, not by Bison; that's good enough.  Adjust test
+       to reflect this.
+       (Many kinds of errors, Unresolved references): Adjust expected
+       diagnostics to match new behavior.  The same errors are caught,
+       though the diagnostics are not quite as fancy.
+       ($ or @ followed by . or -): Likewise.  Also, Make the grammar
+       unambiguous, so that diagnostics are not complicated by ambiguity
+       warnings.
+
+       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
+       other corrections to verbose syntax error messages.
+       * doc/bison.texinfo (Decl Summary): Rewrite entries for
+       lr.default-reductions and lr.type to be clearer, to mention
+       %nonassoc's effect on canonical LR, and to mention LAC.  Add entry
+       for parse.lac.
+       (Glossary): Add entry for LAC.
+
+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: 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 (parse.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