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'.