]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
maint: use announce-gen's new --mail-headers.
[bison.git] / ChangeLog
index 51d9ac5cc406f7363cc28c2dda10efbdbac53433..e2846ca3569b8793b41af67290f5f4dfb1488f47 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,317 @@
+2010-07-25  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       maint: use announce-gen's new --mail-headers.
+       * HACKING (Announce): Update instructions.
+       * cfg.mk (announcement_Cc_): Define.
+       * configure.ac (AM_GNU_GETTEXT_VERSION): Update to 0.18 as
+       required by latest gnulib.
+       * gnulib: Update to latest.
+
+2010-07-24  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       tests: handle Valgrind that complains about >&-.
+       * tests/output.at (AT_CHECK_OUTPUT): Extend to accept pre-tests.
+       (Output files: -dv >&-): Skip test group if running
+       maintainer-check-valgrind.
+
+2010-07-23  Paul Hilfinger  <hilfingr@EECS.Berkeley.EDU>
+
+       * NEWS: Describe new semantic-predicate feature.
+        * data/c.m4 (b4_predicate_case): New definition.
+        * data/java.m4 (b4_predicate_case): New definition.
+        * data/glr.c (yyimmediate): Add definition.
+        (yydoAction): Remove comment, now obsolete.
+        Do YY_REDUCE_PRINT here.
+        (yyglrReduce): Alter comment to indicate that semantic values
+        need not be deferred.
+        Remove YY_REDUCE_PRINT from here; done in yydoAction.
+        (yyprocessOneStack): Pass immediate flag.
+        Delete stacks rejected by predicates in newly split-off parsers.
+        Change handling of yyerr so that only current stack gets deleted
+        when semantic predicate fails.
+        (yyfillin): Don't crash if a semantic value is unresolved (as may
+        happen in predicate rules).
+        Copy lr state as well in debugging mode.
+        Update comment on setting of yysval to include yyloc as well.
+        (yy_reduce_print): Add yynormal argument.  Perform fillin properly.
+        Report unresolved RHS values.
+        (yyimmediate): New table.
+        * src/gram.h (struct rule): Add is_predicate field.
+        * src/output.c (user_actions_output): Use b4_predicate_case for
+        predicates.
+        (prepare_symbols): Output yyimmediate.
+        * src/scan-gram.l: Add %? token, SC_PREDICATE state.
+        * src/scan-code.l (code_props_rule_action_init): Add is_predicate
+        argument.
+        * src/scan-code.h (struct code_props): Add is_predicate field.
+        (code_props_rule_action_init): New interface.
+        * src/parse-gram.y (%?{...}): New token.
+        (rhs): Add %?{...} rule.
+        * src/parse-gram.c: Regenerate.
+        * src/parse-gram.h: Regenerate.
+        * src/reader.c (grammar_current_rule_action_append): Add
+        immediate argument.
+        (grammar_midrule_action): Use new interface for
+        code_props_rule_action_init.
+        (grammar_current_rule_action_append): Ditto.
+        (packgram): Transfer is_predicate value.
+        * src/reader.h (grammar_current_rule_action_append): New interface.
+        * doc/bison.texinfo: Document semantic predicates (%?).
+    
+        * data/glr.c (yylhsNonterm, yyisDefaultedState,yyDefaultAction)
+        (yygetLRActions,yynewGLRStackItem,yyaddDeferredAction,yyinitStateSet)
+        (yyinitGLRStack,yyexpandGLRStack,yyupdateSplit,yymarkStackDeleted)
+        (yyundeleteLastStack,yyglrShift,yyglrShiftDefer,yydoAction,yyglrReduce)
+        (yyidenticalOptions,yymergeOptionSets,yyresolveStates,yyresolveAction)
+        (yyresolveLocations,yyresolveValue,yyreducePrint): Update parameter
+        names in comments and mention all parameters.
+        (struct yyGLRState): Fix description of yyposn field.
+        (yyresolveLocations): Correct comment so as not to imply action when
+        yyn1==0.
+       
+2010-06-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Update from GFDL GFDL 1.2 to 1.3.
+       * doc/bison.texinfo: Update GFDL version number.
+       * doc/fdl.texi: Update to version 1.3, taken from:
+       http://www.gnu.org/licenses/fdl.texi
+
+       Do not use date ranges in copyright notices.
+       See http://www.gnu.org/prep/maintain/maintain.html#Copyright-Notices
+
+       * HACKING, Makefile.am, NEWS, PACKAGING, README, README-alpha:
+       * TODO, bootstrap, bootstrap.conf:
+       * build-aux/update-b4-copyright, cfg.mk, configure.ac:
+       * data/README, data/bison.m4, data/c++-skel.m4, data/c++.m4:
+       * data/c-skel.m4, data/c.m4, data/glr.c, data/glr.cc:
+       * data/java-skel.m4, data/java.m4, data/lalr1.cc:
+       * data/lalr1.java, data/local.mk, data/location.cc:
+       * data/stack.hh, data/variant.hh, data/xslt/bison.xsl:
+       * data/xslt/xml2dot.xsl, data/xslt/xml2text.xsl:
+       * data/xslt/xml2xhtml.xsl, data/yacc.c, djgpp/Makefile.maint:
+       * djgpp/README.in, djgpp/config.bat, djgpp/config.sed:
+       * djgpp/config.site, djgpp/config_h.sed, djgpp/djunpack.bat:
+       * djgpp/local.mk, djgpp/subpipe.c, djgpp/subpipe.h:
+       * djgpp/testsuite.sed, doc/bison.texinfo, doc/local.mk:
+       * doc/refcard.tex, etc/README, etc/bench.pl.in, etc/local.mk:
+       * examples/calc++/Makefile.am, examples/extexi:
+       * examples/local.mk, lib/abitset.c, lib/abitset.h:
+       * lib/bbitset.h, lib/bitset.c, lib/bitset.h:
+       * lib/bitset_stats.c, lib/bitset_stats.h, lib/bitsetv-print.c:
+       * lib/bitsetv-print.h, lib/bitsetv.c, lib/bitsetv.h:
+       * lib/ebitset.c, lib/ebitset.h, lib/get-errno.c:
+       * lib/get-errno.h, lib/lbitset.c, lib/lbitset.h:
+       * lib/libiberty.h, lib/local.mk, lib/main.c, lib/timevar.c:
+       * lib/timevar.def, lib/timevar.h, lib/vbitset.c:
+       * lib/vbitset.h, lib/yyerror.c, m4/bison-i18n.m4:
+       * m4/c-working.m4, m4/cxx.m4, m4/subpipe.m4, m4/timevar.m4:
+       * src/AnnotationList.c, src/AnnotationList.h:
+       * src/InadequacyList.c, src/InadequacyList.h, src/LR0.c:
+       * src/LR0.h, src/Sbitset.c, src/Sbitset.h, src/assoc.c:
+       * src/assoc.h, src/closure.c, src/closure.h, src/complain.c:
+       * src/complain.h, src/conflicts.c, src/conflicts.h:
+       * src/derives.c, src/derives.h, src/files.c, src/files.h:
+       * src/flex-scanner.h, src/getargs.c, src/getargs.h:
+       * src/gram.c, src/gram.h, src/graphviz.c, src/ielr.c:
+       * src/ielr.h, src/lalr.c, src/lalr.h, src/local.mk:
+       * src/location.c, src/location.h, src/main.c:
+       * src/muscle-tab.c, src/muscle-tab.h, src/named-ref.c:
+       * src/named-ref.h, src/nullable.c, src/nullable.h:
+       * src/output.c, src/output.h, src/parse-gram.y:
+       * src/print-xml.c, src/print-xml.h, src/print.c, src/print.h:
+       * src/print_graph.c, src/print_graph.h, src/reader.c:
+       * src/reader.h, src/reduce.c, src/reduce.h, src/relation.c:
+       * src/relation.h, src/scan-code.h, src/scan-code.l:
+       * src/scan-gram.h, src/scan-gram.l, src/scan-skel.h:
+       * src/scan-skel.l, src/state.c, src/state.h, src/symlist.c:
+       * src/symlist.h, src/symtab.c, src/symtab.h, src/system.h:
+       * src/tables.c, src/tables.h, src/uniqstr.c, src/uniqstr.h:
+       * tests/actions.at, tests/atlocal.in, tests/c++.at:
+       * tests/calc.at, tests/conflicts.at, tests/cxx-type.at:
+       * tests/existing.at, tests/glr-regression.at:
+       * tests/headers.at, tests/input.at, tests/java.at:
+       * tests/local.at, tests/local.mk, tests/named-refs.at:
+       * tests/output.at, tests/push.at, tests/reduce.at:
+       * tests/regression.at, tests/sets.at, tests/skeletons.at:
+       * tests/synclines.at, tests/testsuite.at, tests/torture.at:
+       Don't use date ranges in copyright notices.
+
+2010-05-11  Akim Demaille  <demaille@gostai.com>
+
+       lalrl1.cc: give a chance to user defined YYLLOC_DEFAULT.
+       * data/lalr1.cc (YYLLOC_DEFAULT): Move its definition from the
+       header file to the implementation file, after the user %code
+       sections.
+       * NEWS (2.5): Document this.
+
+2010-05-11  Akim Demaille  <demaille@gostai.com>
+
+       doc: please Emacs.
+       * doc/bison.texinfo (Local Variables): Move this after the
+       LocalWords, since the latter are looked for in the whole document,
+       while the former are looked for only at its end.
+       Require american spell checking.
+
+2010-05-10  Akim Demaille  <demaille@gostai.com>
+
+       doc: fix lalr1.cc documentation.
+       * doc/bison.texinfo (C++ Scanner Interface): Fix yylex signature.
+       (C++ Bison Interface): Fix lalr1.cc skeleton name.
+       (C++ Parser Interface): Fix semantic_type and location_type names.
+       Document yy::parser::token.
+       Reported by Jerry Quinn.
+
+2010-05-10  Akim Demaille  <demaille@gostai.com>
+
+       c++: use YYRHSLOC.
+       * data/lalr1.cc (YYRHSLOC): New.
+       (YYLLOC_DEFAULT): Use it.
+       * data/glr.cc: If location_type was user defined, do not include
+       location.hh, and do not produce location.hh and position.hh.
+       * tests/calc.at (YYLLOC_DEFAULT): Use YYRHSLOC.
+       Check that glr.cc supports user defined location_type.
+       * NEWS: Document this.
+
+2010-05-07  Akim Demaille  <demaille@gostai.com>
+
+       doc: fix typo.
+       * tests/synclines.at: here.
+
+2010-05-04  Akim Demaille  <demaille@gostai.com>
+
+       tests: enhance AT_SYNCLINES_COMPILE.
+       * tests/synclines.at (AT_SYNCLINES_COMPILE): More distcc patterns.
+       (AT_TEST_SYNCLINE): Remove GCC 4.5 protection which is already
+       taken care of in AT_SYNCLINES_COMPILE.
+
+2010-05-04  Akim Demaille  <demaille@gostai.com>
+
+       lalr1.cc: don't generate location.hh when location_type is defined
+       * data/bison.m4 (b4_percent_define_get): Accept a default value.
+       * data/c++.m4: Do not provide a default value for the %define
+       variable location_type, rather, use b4_percent_define_get with a
+       default argument where its value is needed.
+       * data/lalr1.cc: Do not load location.cc (which outputs both
+       location.hh and position.hh) if the user defined location_type.
+       Do not include location.hh either.
+
+2010-05-04  Akim Demaille  <demaille@gostai.com>
+
+       lalr1.cc: minor refactoring.
+       * data/lalr1.cc: Don't issue empty namespaces.
+
+2010-05-04  Akim Demaille  <demaille@gostai.com>
+
+       tests: fix %printer.
+       Currently, there is no check that %printer ... <foo> (nor
+       %destructor) is about an existing <foo> type.  This C++ test had
+       it wrong (<::std::string> vs. <std::string>).
+
+       * tests/c++.at (AT_CHECK_VARIANTS): In list.yy, redefine the
+       pretty-printing of lists into something better for parser traces.
+       Update the expected output.
+       Fix correspondance between %type/%token and %printer.
+
+2010-05-04  Akim Demaille  <demaille@gostai.com>
+
+       lalr1.cc: location_type: make sure we don't depend on loc.(begin|end).
+       * tests/calc.at (Span): Instead of begin/end, as in the built-in
+       location class, use first and last.
+       Define YYLLOC_DEFAULT to adjust to these changes.
+       * tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Adjust to the
+       location_type changes.
+
+2010-05-01  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       tests: fix maintainer-xml-check.
+       * data/xslt/xml2dot.xsl (xsl:template match="bison-xml-report"):
+       Update output to include comments now produced by --graph.
+       (xsl:template match="automaton"): As for --graph, name the
+       digraph after the grammar file.
+       * src/print-xml.c (escape_bufs): Enlarge array.
+       (print_xml): Add bug-report and url attributes to
+       bison-xml-report element.
+
+2010-05-01  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       In DOT output, convert from "/*" comments to "//" comments.
+       This handles the possibility that a "*/" might appear in
+       variable portions of those comments at some point in the future.
+       * src/graphviz.c (start_graph): Implement.
+
+2010-04-30  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       Document that undefined %prec identifier warnings will remain.
+       * NEWS (2.4.3): Here.
+       (2.4.2): Here.
+
+2010-04-30  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       Revert 2009-12-30 change for undefined %prec token complaints.
+       That is, keep them as warnings because that should be sufficient
+       to satisfy POSIX without creating backward compatibility issues.
+       Suggested by Richard Stallman at
+       <http://lists.gnu.org/archive/html/bison-patches/2010-03/msg00033.html>.
+       * NEWS (2.5): Remove mention of complaint.
+       * src/reader.c (grammar_rule_check): Convert complaint back to
+       warning.
+       * tests/input.at (%prec's token must be defined): Update.
+
+2010-04-25  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       build: don't require src/bison during bootstrap.
+       Suggested by Eric Blake at
+       <http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00003.html>.
+       * bootstrap.conf (bootstrap_epilogue): New function to make sure
+       src/parse-gram.[ch] are stamped later than src/parse-gram.y.
+
+2010-04-25  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       i18n: fix untranslatable string.
+       Reported by Goran Uddeborg at
+       <http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00000.html>.
+       * src/muscle-tab.c (muscle_percent_define_insert): Here.
+
+2010-04-13  Akim Demaille  <demaille@gostai.com>
+
+       tests: calc: minor refactoring.
+       * tests/calc.at (_AT_DATA_CALC_Y): Simplify yylex.
+
+2010-04-13  Akim Demaille  <demaille@gostai.com>
+
+       tests: calc: simplify location management.
+       * tests/local.at (AT_LOC_PUSHDEF, AT_LOC_POPDEF): New.
+       (_AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS): Use them to
+       define the appropriate AT_LOC accessors.
+       * tests/calc.at: Use AT_LOC accessors.
+
+2010-04-13  Akim Demaille  <demaille@gostai.com>
+
+       test location_type.
+       * tests/local.at (_AT_BISON_OPTION_PUSHDEFS):
+       Define AT_LOCATION_TYPE_IF.
+       (_AT_BISON_OPTION_POPDEFS): Undefine AT_LOCATION_TYPE_IF.
+       * tests/calc.at (_AT_DATA_CALC_Y): When %define location_type is
+       used, provide a user location type and use it.
+       (Simple LALR1 C++ Calculator): Add a test case for location_type.
+
+2010-04-13  Akim Demaille  <demaille@gostai.com>
+
+       tests: check fclose's return value.
+       * tests/calc.at (_AT_DATA_CALC_Y): Check fclose's return status.
+
+2010-04-13  Akim Demaille  <demaille@gostai.com>
+
+       tests: don't depend on the actual location type.
+       * tests/calc.at: Use yy::parser::location_type rather than
+       yy::location, since the former is always right, and might point to
+       another type than the latter.
+
+2010-04-13  Akim Demaille  <demaille@gostai.com>
+
+       formatting changes.
+       * tests/calc.at: Formatting changes.
+
 2010-04-13  Akim Demaille  <demaille@gostai.com>
 
        lalr1.cc: remove useless forward declaration.
 
        -----
 
-       Copyright (C) 1987-1988, 1991-2010 Free Software Foundation,
-       Inc.
+       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.
 
        Copying and distribution of this file, with or without
        modification, are permitted provided the copyright notice and this