X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/326e5cf81eada2ebd9007fa5fe9903a27a8bd067..27290b603576d04f1d6498b0ca509a84b81f193f:/ChangeLog?ds=inline diff --git a/ChangeLog b/ChangeLog index 51585761..9cef074e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,385 @@ +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. + * data/lalr1.cc: Include location.hh before stack.hh. + Remove the useless forward declarations of position and location. + Reported by Chris Morley. + * data/glr.cc: Likewise. + +2010-04-11 Joel E. Denny <joeldenny@joeldenny.org> + + * NEWS (2.4.3): Mention fix for Sun Studio C++. + +2010-04-10 Joel E. Denny <joeldenny@joeldenny.org> + + tests: fix for newer Sun Studio C++. + Reported by Dagobert Michelsen at + <http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00023.html>. + * THANKS (Dagobert Michelsen): Add. + * configure.ac (AC_PREREQ): Set to 2.64 so we get the latest + Autoconf macro for handling the restrict keyword. + * gnulib: Update to latest, which no longer overrides that macro + from Autoconf. + +2010-04-03 Joel E. Denny <jdenny@ces.clemson.edu> + + portability: fix pointer arithmetic to conform to C standard. + Reported by Tys Lefering at + <http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00035.html>. + This fix is already implemented in glr.c and does not apply to + lalr1.java. + * data/lalr1.cc (yy::parser::parse): Increase size of + yyerror_range and adjust subscripting so you don't have to + subtract one from the beginning of the array. + * data/yacc.c (b4_declare_parser_state_variables, + yyparse, yypush_parse): Likewise. + +2010-04-05 Akim Demaille <demaille@gostai.com> + + remove useless include. + * src/graphviz.h: Don't include stdbool.h. + +2010-04-05 Akim Demaille <demaille@gostai.com> + + graph: sign the output file. + * src/graphviz.c (start_graph): Issue comments about Bison. + Suggested by Tys Lefering. + +2010-03-31 Joel E. Denny <jdenny@ces.clemson.edu> + + portability: fix test suite for GCC 4.5's new #error message. + Reported by Tys Lefering at + <http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00030.html>. + * NEWS (2.4.3): Mention. + * tests/synclines.at (AT_TEST_SYNCLINE): Implement. + +2010-03-30 Akim Demaille <demaille@gostai.com> + + fix comments. + * src/graphviz.h: Add missing license notice. + Document. + +2010-03-25 Akim Demaille <demaille@gostai.com> + + tests: fix 250: parse.error=verbose overflow. + * tests/regression.at (parse.error=verbose overflow): Avoid the + double inclusion of stdlib.h as it triggers hard errors. + +2010-03-23 Joel E. Denny <jdenny@ces.clemson.edu> + + portability: fix for BSD make. + Reported by Johan van Selst at + <http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00016.html>. + * tests/local.mk ($(TESTSUITE)): Qualify package.m4 in + this dependency list as in package.m4's target rule. + +2010-03-23 Joel E. Denny <jdenny@ces.clemson.edu> + + portability: fix spawning on at least FreeBSD 8 and FreeBSD 9. + Reported by Johan van Selst at + <http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00014.html>. + * NEWS (2.4.3): New. + * THANKS (Johan van Selst): Add. + * etc/prefix-gnulib-mk (prefix): Adjust regex for makefile + targets so that gnulib's new c++defs.h is matched. + * gnulib: Update to latest. + +2010-03-20 Joel E. Denny <jdenny@ces.clemson.edu> + + maint: update for changes to gnulib's announce-gen. + * HACKING (Announce): RELEASE_TYPE=major must now be written + RELEASE_TYPE=stable. + +2010-03-20 Joel E. Denny <jdenny@ces.clemson.edu> + + Version 2.4.2. + * NEWS (2.4.2): Set version and date. For the recent test suite + portability fixes, don't be so optimistic about their success + given the lack of feedback on the affected platforms. + +2010-02-22 Joel E. Denny <jdenny@ces.clemson.edu> + + tests: fix maintainer-xml-check for recent changes. + * tests/output.at (AT_CHECK_CONFLICTING_OUTPUT): Use + AT_BISON_CHECK_NO_XML rather than AT_BISON_CHECK because an + output file whose name conflicts with a previous output file + is now never generated. + +2010-02-22 Joel E. Denny <jdenny@ces.clemson.edu> + + portability: fix several issues with M4 subprocess. + + M4's output pipe was not being drained upon fatal errors during + scan_skel. As a result, broken-pipe messages from M4 were seen + on at least AIX, HP-UX, Solaris, and RHEL4, and this caused a + failure in the test suite. The problem was that, on platforms + where the default disposition for SIGPIPE is ignore instead of + terminate, M4 sometimes saw fwrite fail with errno=EPIPE and + then reported it. However, there's some sort of race condition, + because the new test group occasionally succeeded. + Reported by Albert Chin at + <http://lists.gnu.org/archive/html/bug-bison/2010-02/msg00004.html>. + + There were also problems with the test suite livelocking on + Tru64 5.1b. Reported by Didier Godefroy at + <http://lists.gnu.org/archive/html/bug-bison/2009-05/msg00005.html>. + Switching to create_pipe_bidi suggested by Akim Demaille. + + To attempt to solve both of these problems, switch to gnulib's + create_pipe_bidi and register M4 process as a slave. Along the + way, clean up file name conflict handling, which was affected by + the broken-pipe problem before the switch. + * NEWS (2.4.2): Document. + * THANKS (Didier Godefroy): Add. + * bootstrap.conf (gnulib_modules): Add pipe. + * gnulib: Update to latest to make sure we have all the latest + fixes. + * lib/local.mk (lib_libbison_a_SOURCES): Remove subpipe.h and + subpipe.c. + * po/POTFILES.in (lib/subpipe.c): Remove. + * src/files.c (compute_output_file_names): Update invocations + of output_file_name_check. + (output_file_name_check): In the case that the grammar file + would be overwritten, use complain instead of fatal, but replace + the output file name with /dev/null. Use the /dev/null solution + for the case of two conflicting output files as well because it + seems safer in case Bison one day tries to open both files at + the same time. + * src/files.h (output_file_name_check): Update prototype. + * src/output.c (output_skeleton): Use create_pipe_bidi and + wait_subprocess. Assert that scan_skel completely drains the + pipe. + * src/scan-skel.l (at_directive_perform): Update + output_file_name_check invocation. + * tests/output.at (AT_CHECK_CONFLICTING_OUTPUT): Check that the + grammar file actually isn't overwritten. + (Conflicting output files: -o foo.y): Update expected output. + * tests/skeletons.at (Fatal errors but M4 continues producing + output): New test group. + +2010-02-04 Joel E. Denny <jdenny@ces.clemson.edu> + + Update POTFILES. + * HACKING (Release Procedure): Add reminder about keeping + POTFILES files up-to-date. + * po/POTFILES.in (src/muscle-tab.c, src/scan-skel.l): Add. + +2010-02-01 Joel E. Denny <jdenny@clemson.edu> + + Code cleanup. + * tests/atlocal.in (abs_top_srcdir): Remove shell variable, + which is already defined in atconfig. + +2010-01-22 Joel E. Denny <jdenny@clemson.edu> + + tests: fix missing include caught by g++ 4.4.1. + Reported by Tys Lefering. + * HACKING (Release checks): Add note about trying a recent GCC. + * tests/regression.at (_AT_DATA_DANCER_Y): For C++, include + cstdlib for abort. + (_AT_DATA_EXPECT2_Y): Likewise. + +2010-01-21 Joel E. Denny <jdenny@clemson.edu> + + * cfg.mk (gnulib_dir): Assume gnulib is a subdirectory. + +2010-01-21 Joel E. Denny <jdenny@clemson.edu> + + maint: automate PACKAGE_COPYRIGHT_YEAR update, and update it. + * HACKING (Release Procedure): Update notes on copyright years. + * Makefile.am (update-package-copyright-year): New target rule. + * build-aux/update-package-copyright-year: New file. + * cfg.mk (update-copyright): Add update-package-copyright-year + as a dependency. + +2010-01-19 Joel E. Denny <jdenny@clemson.edu> + + * bootstrap: Import improvements from latest gnulib. + +2010-01-19 Joel E. Denny <jdenny@clemson.edu> + + build: require Automake 1.11.1 to avoid a security flaw. + * HACKING (Release Procedure): Don't document Automake security + flaw here. + * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1, and explain + why here. + +2010-01-19 Joel E. Denny <jdenny@clemson.edu> + + gnulib: update to latest. + +2010-01-19 Joel E. Denny <jdenny@clemson.edu> + + ChangeLog (2006-09-15): add Odd Arild Olsen's role for push.c. + 2010-01-15 Joel E. Denny <jdenny@clemson.edu> Thank the developer of the initial push parser implementation. @@ -7989,9 +8371,12 @@ 2006-09-15 Bob Rossi <bob@brasko.net> + Add support for push parsing. Based on the original work of + Odd Arild Olsen <oao@fibula.no>. * data/Makefile.am (dist_pkgdata_DATA): Add push.c. * data/c.m4 (YYPUSH): New. (b4_push_if): New macro. Use it instead of #ifdef YYPUSH. + * data/push.c: New file. * src/getargs.c (push_parser): New var. * src/getargs.h (push_parser): New declaration. * src/output.c (prepare): Add macro insertion of `push_flag'.