+2009-04-14 Akim Demaille <demaille@gostai.com>
+
+ variables: use `parse.assert' instead of `assert'.
+ * TODO (assert): Remove.
+ * data/bison.m4 (b4_assert_if): Replace with...
+ (b4_parse_assert_if): this.
+ * data/lalr1.cc, data/variant.hh, tests/c++.at: Adjust.
+ * doc/bison.texinfo (Decl Summary): Document parse.assert.
+
+2009-04-14 Akim Demaille <demaille@gostai.com>
+
+ variables: use `parse.trace' instead of `debug'.
+ * src/getargs.c (getargs): Map -t to %define trace.parse.
+ * src/scan-gram.l (%debug): Map to %define trace.parse.
+ * data/bison.m4 (b4_percent_define_if_define): Map `.' in variable
+ names to `_' in macro names.
+ (b4_debug_if): Replace with...
+ (b4_parse_trace_if): this.
+ * data/glr.c, data/glr.cc, data/lalr1.cc, data/lalr1.java,
+ * data/yacc.c: Adjust.
+ * doc/bison.texinfo (Decl Summary): Document %debug as obsoleted.
+ Use @code to label the variable list.
+ Document the variable parse.trace.
+ (Tracing): Promote the parse.trace variable.
+ * TODO: %printer is not documented.
+
+2009-04-14 Akim Demaille <demaille@gostai.com>
+
+ doc: minor fixes.
+ * doc/bison.texinfo (Decl Summary): Fix entry about %debug.
+ (Table of Symbols): Remove duplicate entry for %debug.
+
+2009-04-10 Eric Blake <ebb9@byu.net>
+
+ submodules: update to latest
+ * submodules/autoconf: Use latest upstream Autoconf.
+
+2009-04-06 Eric Blake <ebb9@byu.net>
+
+ Work around autoconf 2.63b bug in testsuite.
+ * tests/output.at (AT_CHECK_OUTPUT_FILE_NAME): Avoid tripping
+ autoconf bug related to # in test.
+
+2009-04-06 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ * NEWS (2.5): New section. Describe new -D/--define feature.
+
+2009-04-06 Akim Demaille <demaille@gostai.com>
+
+ Regen.
+ * src/parse-gram.h, src/parse-gram.c: Regen.
+
+2009-04-06 Akim Demaille <demaille@gostai.com>
+
+ rename muscle_tab.* as muscle-tab.* for consistency.
+ * src/muscle_tab.h, src/muscle_tab.c: Rename as...
+ * src/muscle-tab.h, src/muscle-tab.c: these.
+ * src/getargs.c, src/local.mk, src/main.c, src/output.c,
+ * src/parse-gram.y, src/reader.c, src/scan-code.l: Adjust.
+
+2009-04-06 Akim Demaille <demaille@gostai.com>
+
+ Makefile: introduce $(BISON).
+ * src/local.mk (BISON): New.
+ (YACC): Use it.
+
+2009-04-06 Akim Demaille <demaille@gostai.com>
+
+ parser: handle %locations as %define locations.
+ * src/getargs.h, src/getargs.c (locations_flag): Remove.
+ * src/getargs.c, src/scan-code.l: Use muscle_percent_define_ensure
+ to set "locations" to true.
+ * src/output.c (prepare): Don't output "locations".
+ * src/scan-gram.l (%locations): Handle it as a %<flag>.
+ * src/parse-gram.y: It's no longer a token.
+ Don't handle it.
+ * data/bison.m4 (b4_locations_if): Define it with
+ b4_percent_define_if_define.
+ * data/c.m4, data/glr.cc: Adjust.
+
+2009-04-06 Akim Demaille <demaille@gostai.com>
+
+ Regen.
+ * src/parse-gram.c: Regen.
+
+2009-04-06 Akim Demaille <demaille@gostai.com>
+
+ muscle: factor the handling of obsolete of obsolete directives.
+ Suggested by Joel E. Denny.
+
+ * src/muscle_tab.h, src/muscle_tab.c (muscle_percent_define_ensure):
+ New, extracted from...
+ * src/parse-gram.y (prologue_declaration: pure-parser): here.
+ Remove it.
+ (prologue_declaration: "%<flag>"): Use
+ muscle_percent_define_ensure.
+ (%error-verbose, %pure-parser): No longer tokens.
+ * src/scan-gram.l (pure-parser): Return as a %<flag>.
+
+2009-04-06 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ Fix options documentation.
+ * build-aux/cross-options.pl: As in --help output, write optional
+ arguments as [=ARG] not =[ARG].
+ * doc/bison.texinfo (Bison Options): Add -W/--warnings argument.
+
+2009-04-04 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ Replace BISON_PROG_GNU_M4 with Autoconf's AC_PROG_GNU_M4.
+ If the first m4 in $PATH is wrong, it keeps looking. Moreover, its
+ requirements for a correct m4 are stricter.
+ * m4/m4.m4: Make it a symbolic link to submodules/autoconf/m4/m4.m4.
+ * configure.ac: Update to use AC_PROG_GNU_M4.
+ Reported by Eric Blake.
+
+2009-04-03 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ Help with updating web manual.
+ * HACKING: Incorporate instructions from gnulib/doc/README.
+ * bootstrap.conf (gnulib_modules): Add gendocs.
+
+2009-04-03 Akim Demaille <demaille@gostai.com>
+
+ Regen.
+ * src/parse-gram.h, src/parse-gram.c: Regen.
+
+2009-04-03 Akim Demaille <demaille@gostai.com>
+
+ Factor %FLAG at scan level.
+ * src/parse-gram.y (PERCENT_DEBUG, PERCENT_ERROR_VERBOSE): Token
+ definitions and associated rules, replaced by....
+ (PERCENT_FLAG): this new token type, and rule.
+ * src/scan-gram.l (RETURN_PERCENT_FLAG): New.
+ Use it for %debug and %error-verbose.
+
+2009-04-03 Akim Demaille <demaille@gostai.com>
+
+ Regen.
+ * src/parse-gram.h, src/parse-gram.c: Regen.
+
+2009-04-03 Akim Demaille <demaille@gostai.com>
+
+ Treat %debug as %define debug.
+ * data/bison.m4 (b4_debug_if): New.
+ * data/glr.c, data/glr.cc, data/lalr1.cc, data/yacc.c,
+ * data/lalr1.java: Use it instead of b4_debug_flag.
+ * src/getargs.h, src/getargs.c (debug_flag): Remove.
+ * src/output.c (prepare): Don't output it.
+ * src/parse-gram.y: Treat %debug as %define debug.
+
+2009-04-03 Akim Demaille <demaille@gostai.com>
+
+ Treat %error-verbose as %define error_verbose.
+ This allows to pass -Derror_verbose on the command line. Better
+ yet, it allows to pass -Derror_verbose=$(ERROR_VERBOSE), with
+ ERROR_VERBOSE being defined as false or true.
+ * data/bison.m4 (b4_percent_define_if_define): Instead of relying
+ on b4_percent_define_ifdef, for does not check the defined value,
+ but only whether the symbol is defined, rely on
+ b4_percent_define_flag_if, so that a value of "false" is processed
+ as a false.
+ If not defined, define the flag to "false".
+ (b4_error_verbose_if): New.
+ * data/glr.c, data/lalr1.cc, data/yacc.c: Use it instead of
+ b4_error_verbose_flag.
+ * src/getargs.h, src/getargs.c (error_verbose_flag): Remove.
+ * src/output.c (prepare): Don't output it.
+ * src/parse-gram.y (%error-verbose): Treat as %define error_verbose.
+
+2009-04-03 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ Fix strange %define locations for default values.
+ Reported by Akim Demaille at
+ <http://lists.gnu.org/archive/html/bug-bison/2007-12/msg00001.html>
+ and discussed again starting at
+ <http://lists.gnu.org/archive/html/bison-patches/2008-11/msg00102.html>.
+ * data/bison.m4 (b4_percent_define_default): Leave syncline blank
+ because location information is bogus.
+ Use angle brackets to delimit fake file name because square brackets
+ look like underexpanded m4. Choose a better fake file name.
+ Use negative line numbers.
+ * src/muscle_tab.c (muscle_percent_define_default): Likewise.
+ * src/location.c (location_print): If line for a boundary is negative,
+ only print that boundary's file name.
+ * src/location.h: Document that.
+ * tests/skeletons.at (%define Boolean variables: invalid skeleton
+ defaults): Update output.
+
+2009-04-03 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ Pacify ./configure --enable-gcc-warnings.
+ * Makefile.am (AM_CFLAGS): Remove $(WERROR_CFLAGS) because many files
+ in lib won't compile with it.
+ * src/local.mk (src_bison_CFLAGS): Use $(WERROR_CFLAGS) here only.
+
+2009-03-31 Akim Demaille <demaille@gostai.com>
+
+ bootstrap: --help to stdout.
+ * bootstrap (usage): Don't send --help to stderr.
+ Use a here doc instead of a long string.
+
+2009-03-31 Akim Demaille <demaille@gostai.com>
+
+ bootstrap: README-hacking no longer exists
+ * bootstrap (checkout_only_file): Set to HACKING.
+
+2009-03-26 Akim Demaille <demaille@gostai.com>
+
+ doc: merge HACKING and README-hacking.
+ Two files is confusing.
+ Reported by Alexandre Duret-Lutz.
+
+ * README-hacking: Merge into...
+ * HACKING (Working from the repository): here.
+
+2009-03-26 Akim Demaille <demaille@gostai.com>
+
+ doc: update README-hacking.
+ * README-hacking: We now use git and git submodules.
+ Reported by Ralf Wildenhues and Alexandre Duret-Lutz.
+
+2009-03-26 Akim Demaille <demaille@gostai.com>
+
+ lalr1.cc: avoid GCC 4.3 warnings.
+ GCC 4.3 now warns about "a || b && c" and asks for explicit
+ parentheses.
+ Reported by Alexandre Duret-Lutz.
+ * data/location.cc: Update copyright years.
+ (Position::operator==): Use parens to make precedence explicit.
+ Compare lines and columns first, as they are more likely to be
+ different, and they are faster to compare.
+
+2009-03-26 Akim Demaille <demaille@gostai.com>
+
+ gnulib: update.
+ * gnulib: Update to latest.
+ * src/local.mk (AM_CFLAGS): Move to...
+ * Makefile.am: here.
+ * etc/prefix-gnulib-mk (prefix_assignment): Also transform
+ AM_CFLAGS.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ Comment changes.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ Share b4_yytranslate_define.
+ * data/lalr1.cc (b4_yytranslate_define): Move to...
+ * data/c++.m4: here.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ Use locations in the variant example.
+ Yes, this obfuscates the point of this example, variants only.
+ But glr.cc cannot work (yet?) without locations. This change
+ makes it easier to use this example with glr.cc.
+
+ * examples/variant.yy (assert): %define it.
+ (locations): Request them.
+ (yylex): Bind the location to the stage.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ Dub make_TOKEN as a public type interface.
+ * data/c++.m4 (b4_symbol_constructor_declare)
+ (b4_symbol_constructor_define): New empty stubs.
+ (b4_public_types_declare, b4_public_types_define): Use them.
+ * data/lalr1.cc (b4_symbol_constructor_declare)
+ (b4_symbol_constructor_declare_)
+ (b4_symbol_constructor_define_, b4_symbol_constructor_define):
+ Move to...
+ * data/variant.hh: here.
+ Remove the "b4_variant_if" parts, as variant.hh is loaded only if
+ needed.
+ * data/lalr1.cc: No longer invoke b4_symbol_constructor_define and
+ b4_symbol_constructor_declare, as it is now done by
+ b4_public_types_define and b4_public_types_declare.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ Coding style changes.
+ * data/lalr1.cc (b4_symbol_constructor_declaration_)
+ (b4_symbol_constructor_declarations)
+ (b4_symbol_constructor_definition_)
+ (b4_symbol_constructor_definitions)
+ (b4_yytranslate_definition): Rename as...
+ (b4_symbol_constructor_declare_)
+ (b4_symbol_constructor_declare)
+ (b4_symbol_constructor_define_)
+ (b4_symbol_constructor_define)
+ (b4_yytranslate_define): these.
+ * data/variant.hh (b4_variant_definition): Rename as...
+ (b4_variant_define): this.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ Factor b4_assert_if, b4_lex_symbol_if, and b4_variant_if.
+ * data/bison.m4 (b4_percent_define_if_define): New.
+ * data/c++.m4 (b4_variant_if): Move to...
+ * data/bison.m4: Here, using b4_percent_define_if_define.
+ * data/lalr1.cc (b4_assert_if, b4_lex_symbol_if): Move to...
+ * data/bison.m4: Here, using b4_percent_define_if_define.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ Dub symbol_type_base as a public type.
+ * data/c++.m4 (b4_public_types_declare): Now define
+ symbol_type_base and symbol_type.
+ (b4_public_types_define): New.
+ In both cases, the definitions are taken verbatim from lalr1.cc.
+ * data/lalr1.cc: Adjust.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ b4_public_types_declare.
+ * data/c++.m4 (b4_public_types_declare): New.
+ * data/glr.cc, data/lalr1.cc: Use it.
+
+2009-03-02 Akim Demaille <demaille@gostai.com>
+
+ b4_semantic_type_declare.
+ * data/c++.m4 (b4_semantic_type_declare): New.
+ Factors and generalizes what was in glr.cc and lalr1.cc.
+ * data/variant.hh (b4_semantic_type_declare): Redefine it for
+ variants.
+ * data/lalr1.cc, data/glr.cc: Use it.
+
+2009-02-26 Akim Demaille <demaille@gostai.com>
+
+ Upgrade gnulib.
+ * gnulib: Upgrade from master.
+ * lib/.cvsignore, lib/.gitignore, m4/.cvsignore, m4/.gitignore:
+ Regen.
+
+2009-02-25 Akim Demaille <demaille@gostai.com>
+
+ Remove useless arguments.
+ * data/glr.c (yy_reduce_print): $$ and @$ are not used and not
+ relevant.
+
+2009-02-25 Akim Demaille <demaille@gostai.com>
+
+ Comment changes.
+ * data/lalr1.cc: here.
+
+2009-02-25 Akim Demaille <demaille@gostai.com>
+
+ Fix glr.cc's debug level handling.
+ * data/glr.cc (yydebug_): Remove, as it is actually yydebug from
+ glr.c which is used.
+ (debug_level, set_debug_level): Adjust.
+
+2009-02-25 Akim Demaille <demaille@gostai.com>
+
+ Copyright years.
+ * data/glr.c: Add 2007 and 2008 here, consistenly with the comments.
+
+2009-02-25 Akim Demaille <demaille@gostai.com>
+
+ Style changes.
+ * etc/bench.pl.in (generate_grammar_list): Consitently use
+ location_type, not yy::location.
+
+2009-02-25 Akim Demaille <demaille@gostai.com>
+
+ Comment change.
+ * data/lalr1.cc: here.
+
+2009-02-19 Akim Demaille <demaille@gostai.com>
+
+ Make yyparser::error public.
+ * data/lalr1.cc: here.
+ There is no good reason to keep it private (and it is convenient
+ to use it from the scanner for instance). It is already public in
+ glr.cc.
+
+2009-02-19 Akim Demaille <demaille@gostai.com>
+
+ Comment changes.
+ * data/glr.cc: here.
+
+2009-02-19 Akim Demaille <demaille@gostai.com>
+
+ Remove trailing blanks.
+ The epilogue has its own ending \n, no need to add another.
+
+ * data/glr.c, data/lalr1.java, data/yacc.c: dnl when outputing the
+ epilogue.
+ * data/glr.cc: dnl when extending the epilogue.
+ Remove stray "private:".
+
+2009-02-19 Akim Demaille <demaille@gostai.com>
+
+ Use b4_c_modern.
+ * data/c.m4 (b4_c_function_decl): Here.
+
+2009-02-19 Akim Demaille <demaille@gostai.com>
+
+ Comment changes.
+ * data/lalr1.cc: here.
+
+2009-02-19 Akim Demaille <demaille@gostai.com>
+
+ Extract variant.hh
+ * data/variant.hh: New, extracted from...
+ * data/lalr1.cc: here.
+ Adjust.
+ * data/local.mk: Adjust.
+
+2009-02-19 Akim Demaille <demaille@gostai.com>
+
+ Extract stack.hh from lalr1.cc.
+ * data/stack.hh: New.
+ * data/lalr1.cc: Extract from here.
+ * data/local.mk: Adjust.
+
+2009-02-03 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ Add reminder about uploading public key to keys.gnupg.net.
+ * HACKING (Release Procedure): Here.
+
+2009-01-28 Akim Demaille <demaille@gostai.com>
+
+ * NEWS: Update information about 2.4.1 and 2.4.2.
+
+2008-11-04 Akim Demaille <demaille@gostai.com>
+
+ Reformat NEWS.
+ * NEWS: Use more outline-mode markup.
+ Suggested by Jim Meyering.
+
+2009-01-08 Akim Demaille <demaille@gostai.com>
+
+ Fix grep portability issues.
+ Grep on Solaris does not support -q.
+ Reported by Summum Bonum.
+
+ * NEWS: Add a stub for 2.4.2.
+ * THANKS: Add Summum Bonum.
+ * tests/atlocal.in (EGREP): New.
+ (CC, CXX, XSLTPROC): Make it possible to override them via
+ envvars.
+ * tests/java.at: Use $EGREP instead of egrep.
+ Use AT_CHECK's ignore instead of grep's -q.
+
+2008-12-11 Akim Demaille <demaille@gostai.com>
+
+ Pass the token type to yysyntax_error.
+ * data/yacc.c (yysyntax_error): Take the transated token instead
+ of the raw number.
+ Adjust callers.
+ * TODO: Update.
+
+2008-12-11 Akim Demaille <demaille@gostai.com>
+
+ Formatting changes.
+ * data/glr.c: Formatting changes.
+
+2008-12-11 Akim Demaille <demaille@gostai.com>
+
+ Propagate i18n changes into glr.c.
+ * TODO: Update.
+ * data/glr.c (yyreportSyntaxError): Use "switch" instead of
+ building the error message format dynamically.
+ * data/lalr1.java: Formatting changes.
+
+2008-12-11 Akim Demaille <demaille@gostai.com>
+
+ Use testsuite -C.
+ * tests/local.mk: Replace "cd && testsuite" by "testsuite -C".
+ Solves problems when top_srcdir is an absolute path.
+ Suggested by Eric Blake.
+ * configure.ac: Require Autoconf 2.62.
+
+2008-12-11 Akim Demaille <demaille@gostai.com>
+
+ Simplify the i18n of the error messages.
+ * data/lalr1.cc: Comment changes.
+ * data/yacc.c (yysyntax_error): Rewrite, using a switch as in
+ lalr1.cc instead of building dynamically the format string.
+
+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Fix portability issue in the test suite.
+ * tests/local.at (AT_MATCHES_CHECK): New.
+ Based on Perl instead of Sed. Sed has too many portability
+ pitfalls, not ever Sed is GNU Sed.
+ * tests/actions.at (Fix user actions without a trailing semicolon):
+ Use it.
+
+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Update data/README.
+ * data/README: Document glr.cc, lalr1.java, m4sugar and xslt.
+
+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Install autoconf as a submodule to get m4sugar.
+ * .gitmodules: Add submodules/autoconf.
+ * data/m4sugar/foreach.m4, data/m4sugar/m4sugar.m4: Now links into
+ submodules/autoconf.
+
+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Test token.prefix in all the skeletons.
+ * data/java.m4 (b4_token_enum): Use the token.prefix.
+ * tests/local.at (AT_BISON_OPTION_PUSHDEFS): Define AT_TOKEN_PREFIX.
+ * tests/calc.at (_AT_DATA_CALC_Y): Use it.
+ Add checks for yacc.c, glr.c, lalr1.cc and glr.cc.
+ * tests/java.at: Comment changes.
+ (AT_CHECK_JAVA_MINIMAL): Define the END token.
+ (Java parser class and package names): Add token.prefix check.
+
+2008-12-08 Akim Demaille <demaille@gostai.com>
+
+ Fix regeneration of atconfig.
+ * tests/local.mk (tests/atconfig): The rule was incorrect, but
+ remove it: now that there is no tests/Makefile.am, the top-level
+ Makefile properly updates atconfig when needed.
+
+2008-12-07 Di-an Jan <dianj@freeshell.org>
+
+ Implement the FIXME that ends an user action with a semicolon
+ if it seems necessary.
+ * src/scan-code.l (flex rules section): Flag cpp directive from
+ any `#' to the first unescaped end-of-line. Semicolon is not
+ needed after `;', `{', '}', or cpp directives and is needed after
+ any other token (whitespaces and comments have no effect).
+ * tests/actions.at (Fix user actions without a trailing semicolon):
+ New test.
+ * tests/input.at (AT_CHECK_UNUSED_VALUES): Add semicolons to
+ to make user actions complete statements.
+ Adjust column numbers in error messages.
+ * tests/regression.at (Fix user actions without a trailing semicolon):
+ Remove. Covered by new test.
+
+2008-12-07 Akim Demaille <demaille@gostai.com>
+
+ Update gnulib.
+ * gnulib: Update from master.
+
+2008-12-05 Eric Blake <ebb9@byu.net>
+
+ Avoid compiler warning.
+ * src/output.c (muscle_insert_item_number_table): Delete unused
+ function.
+
2008-12-02 Eric Blake <ebb9@byu.net>
Build testsuite with newer autoconf.
-----
Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996,
- 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
- Free Software Foundation, Inc.
+ 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+ 2008, 2009 Free Software Foundation, Inc.
Copying and distribution of this file, with or without
modification, are permitted provided the copyright notice and this