]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
(YYSTACK_ALLOC_MAXIMUM): Add more-descriptive comment.
[bison.git] / ChangeLog
index 1db1da514c8c8c4c66c371724de5623341c1cfa9..bcad16a5041e5ba2ecd42f5d274ce3cb44ebb2df 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,636 @@
+2005-04-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: Bison-generated C parsers no longer quote literal strings
+       associated with tokens.
+       * src/output.c (prepare_symbols): Don't escape strings,
+       since users don't want to see C escapes.
+       * tests/calc.at (AT_CHECK_CALC): Adjust to lack of quotes
+       in diagnostics.
+       * tests/input.at (Torturing the Scanner): Likewise.
+       * tests/regression.at (Token definitions, Web2c Actions): Likewise.
+
+2005-04-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/torture.at (AT_INCREASE_DATA_SIZE): Skip the test if
+       the data size is known to be too small and we can't increase it.
+       This works around an HP-UX 11.00 glitch reported by Andrew Benham.
+
+2005-04-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/parse-gram.y: Include quotearg.h.
+       (string_as_id): Quote $1 before using it as a key, since the
+       lexer no longer quotes it for us.
+       (string_content): Don't strip quotes, since lexer no longer
+       quotes it for us.
+       * src/scan-gram.l: Include quotearg.h.
+       ("\""): Omit quote.
+       ("'"<SC_ESCAPED_CHARACTER>): Quote symbol before using it as
+       a key, since the rest of the lexer doesn't quote it.
+       * src/symtab.c (symbol_get): Don't quote symbol; caller does it now.
+       * tests/regression.at (Token definitions): Check for backslashes
+       in token strings.
+
+       * data/yacc.c (YYSTACK_ALLOC_MAXIMUM): New macro.
+       (YYSIZE_T): Define to unsigned long int when using an older compiler.
+       (yyparse): Revamp code to generate long syntax error message, to
+       make it easier to translate, and to avoid problems with arithmetic
+       overflow.  Change "virtual memory" to "memory" in diagnostic, since
+       we don't know whether the memory is virtual.
+
+2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: Bison-generated C parsers now use the _ macro to
+       translate strings.
+       * data/yacc.c (_) [!defined _]: New macro.
+       All English strings wrapped inside this macro.
+       * doc/bison.texinfo (Bison Parser): Document _.
+       * po/POTFILES.in: Include src/parse-gram.c, since it now
+       includes translateable strings that parse-gram.y doesn't.
+
+2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/symtab.c (symbol_make_alias): Call symbol_type_set,
+       reverting the 2004-10-11 change to this function.
+       (symbol_check_alias_consistency): Don't call symbol_type_set
+       if the type name is already correct.
+       * tests/input.at (Typed symbol aliases): New test, from Tim Van Holder.
+
+2005-03-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/regression.at (Token definitions): Don't use a token named
+       c, as that generates a "#define c ..." that runs afoul of buggy
+       stdlib.h that uses the identifier c as a member of struct
+       drand48_data.  Problem reported by Horst Wente.
+
+2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * bootstrap: Change translation URL from
+       http://www2.iro.umontreal.ca/~gnutra/po/maint/bison/ to
+       http://www.iro.umontreal.ca/translation/maint/bison/ to avoid
+       redirection glitches.  Problem reported by twlevo@xs4all.nl.
+
+2005-03-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/local.at (AT_COMPILE, AT_COMPILE_CXX): Don't put options
+       after operands; POSIX says this isn't portable for the c99 command.
+
+2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/glr-regression.at (glr-regr2a.y): Try to dump core
+       immediately if a data overrun has occurred; this may help us track
+       down what may be a spurious failure on MacOS.
+
+2005-03-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Respond to problems reported by twlevo@xs4all.nl.
+
+       * bootstrap: Use "trap - 0" rather than the unportable "trap 0".
+
+       * src/vcg.h: Comment fix.
+       * src/vcg_defaults.h: Parenthesize macro bodies to make them safe.
+       (G_CMAX): Change to -1 instead of INT_MAX.
+
+       * data/yacc.c (yyparse): Omit spaces before #line.
+
+2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/tables.c (state_number_to_vector_number): Put it inside an
+       "#if 0", since it's not currently used.  Problem reported by
+       Roland McGrath.
+
+2005-03-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/output.c (escaped_output): Renamed from
+       escaped_file_name_output, since we now use it for symbol tags as
+       well.  All uses changed.
+       (symbol_destructors_output, symbol_printers_output):
+       Escape symbol tags too.
+       Problem reported by Matyas Forstner in
+       <http://lists.gnu.org/archive/html/bug-bison/2005-03/msg00009.html>.
+
+       * src/muscle_tab.c (muscle_code_grow): Don't quote numbers; it's
+       not needed.
+       * src/output.c (user_actions_output, token_definitions_output,
+       symbol_destructors_output, symbol_printers_output): Likewise.
+       * src/reader.c (prologue_augment): Likewise.
+       * src/scan-gram.l (handle_action_dollar, handle_action_at): Likewise.
+
+       * src/vcg.c (output_edge): Don't quote linestyle arg.
+       Problem reported by twlevo@xs4all.nl.
+
+2005-02-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc/bison.texinfo (Semantic Tokens): Fix scoping problem in
+       example, reported by Derek M Jones.  Also, make the example even
+       more outrageous, to better illustrate how bad the problem is.
+
+2005-02-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc/bison.texinfo (Mfcalc Symtab): Correct the prototype for
+       putsym.  Typo reported by Sebastian Piping.
+
+2005-02-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc/bison.texinfo (Language and Grammar): some -> same
+       (Epilogue): int he -> in the
+       Typos reported by Sebastian Piping via Justin Pence.
+
+2005-02-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/glr-regression.at (Improper handling of embedded actions
+       and dollar(-N) in GLR parsers): Renamed from "Improper handling of
+       embedded actions and $-N in GLR parsers", work around an Autoconf bug
+       with dollar signs in test names.
+       * tests/input.at (Invalid dollar-n): Renamed from "Invalid \$n",
+       for a similar reason.
+
+2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/vcg.c (output_graph): G_VIEW -> normal_view in case someone
+       wants to redefine G_VIEW.
+
+2005-01-27  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/vcg.c (get_view_str): Remove case for normal_view.
+       Problem reported by twlevo@xs4all.nl.
+
+2005-01-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * configure.ac (O0CFLAGS, O0CXXFLAGS): Fix quoting bug.
+       Problem reported by twlevo@xs4all.nl.
+
+       * doc/bison.texinfo: Change @dircategory from "GNU programming
+       tools" to "Software development".  Requested by Richard Stallman
+       via Karl Berry.
+
+2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/c++.at (AT_CHECK_DOXYGEN): Don't use options after operands.
+       Problem reported by twlevo@xs4all.nl.
+
+2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/yacc.c (YYCOPY, yystpcpy, yyparse): Remove "register"
+       keyword; it's not needed with modern compilers, and it doesn't
+       affect correctness with older compilers.  Suggested by
+       twlevo@xs4all.nl.
+
+2005-01-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/glr.c (yyuserAction): Add "default: break;" case to pacify
+       gcc -Wswitch-default.
+       * data/lalr1.cc (yy::]b4_parser_class_name[::parse): Likewise.
+       * data/yacc.c (yyparse): Likewise.
+
+2005-01-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/system.h (OUTPUT_EXT, TAB_EXT): Define only if not defined
+       already.  Let config.h define any nonstandard values.
+
+2005-01-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/calc.at (_AT_DATA_CALC_Y): Use alarm (100), not alarm (10),
+       for the benefit of slower hosts.  Problem reported by
+       Nelson H. F. Beebe.
+
+2005-01-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/yacc.c (yyparse): Pacify non-GCC compilers about yyerrorlab
+       being defined and not used.
+       * data/lalr1.cc (yyparse): Likewise.
+       Use "if (false)" rather than "if (0)".
+
+2005-01-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * TODO: Mention that we should allow NUL bytes in tokens.
+
+2005-01-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/scan-skel.l (<<EOF>>): Don't close standard output.
+       Problem reported by Hans Aberg.
+
+2005-01-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/getargs.c (version): Happy new year; update overall
+       program copyright date from 2004 to 2005.
+
+       * src/scan-skel.l ("@output ".*\n): Don't close standard output.
+       Problem reported by Hans Aberg.
+       * tests/output.at (AT_CHECK_OUTPUT): New arg SHELLIO.
+       (Output file names.): Add a test for the case when standard output
+       is closed.
+
+2004-12-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc/bison.texinfo (@copying): Update FDL version number to 1.2,
+       to fix an oversight in the Bison 2.0 manual.
+
+2004-12-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: Version 2.0.  Reformat the existing news items since
+       1.875, so that related items are grouped together.
+       * configure.ac (AC_INIT): Bump version to 2.0.
+       * src/parse-gram.c, src/parse-gram.h: Regenerate with 2.0.
+
+       * tests/torture.at (Exploding the Stack Size with Alloca): Set
+       YYSTACK_USE_ALLOCA to 1 if __GNUC__ or alloca are defined;
+       otherwise, we're not testing alloca.  Unfortunately there's no
+       simple way to consult HAVE_ALLOCA here.
+
+       * data/lalr1.cc (yydestruct_): Pacify unused variable warning
+       for yymsg, too.
+
+       * src/LR0.c (new_itemsets): Use memset rather than zeroing by
+       hand.  This avoids a warning about comparing int to size_t when
+       GCC warnings are enabled.
+
+2004-12-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: Bison-generated parsers no longer default to using the
+       alloca function (when available) to extend the parser stack, due
+       to widespread problems in unchecked stack-overflow detection.
+       * data/glr.c (YYMAXDEPTH): Remove undef when zero.  It's the user's
+       responsibility to set it to a positive value.  This lets the user
+       specify a value that is not a preprocessor constant.
+       * data/yacc.c (YYMAXDEPTH): Likewise.
+       (YYSTACK_ALLOC): Define only if YYSTACK_USE_ALLOCA is nonzero.
+       * doc/bison.texinfo (Stack Overflow): YYMAXDEPTH no longer needs
+       to be a compile-time constant.  However, explain the constraints on it.
+       Also, explain the constraints on YYINITDEPTH.
+       (Table of Symbols): Explain that alloca is no longer the default.
+       Explain the user's responsibility if they define YYSTACK_USE_ALLOCA
+       to 1.
+
+       * doc/bison.texinfo (Location Default Action): Mention that n must
+       be zero when k is zero.  Suggested by Frank Heckenbach.
+
+2004-12-22  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (parser::token_number_type, parser::rhs_number_type)
+       (parser::state_type, parser::semantic_type, parser::location_type):
+       Private, not public.
+       (parser::parse): Return ints, not bool.
+       Returning a bool introduces a problem: 0 corresponds to false, and
+       it seems weird to return false on success.  Returning true changes
+       the conventions for yyparse.
+       Alternatively we could return void and send an exception.
+       There is no clear consensus (yet?).
+       (state_stack, semantic_stack, location_stack): Rename as...
+       (state_stack_type, semantic_stack_type, location_stack_type): these.
+       Private, not public.
+       * tests/c++.at: New.
+       * tests/testsuite.at, tests/Makefile.am: Adjust.
+
+2004-12-21  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (parser::parse): Return a bool instead of an int.
+
+2004-12-21  Akim Demaille  <akim@epita.fr>
+
+       Don't impose std::string for filenames.
+
+       * data/lalr1.cc (b4_filename_type): New.
+       (position::filename): Use it.
+       (parser.hh): Move the inclusion of stack.hh and location.hh below
+       the user code, so that needed headers for the filename type can be
+       included first.
+       Forward declare them before the user code.
+       * tests/Makefile.am (check-local, installcheck-local): Pass
+       TESTSUITEFLAGS to the TESTSUITE.
+
+2004-12-20  Akim Demaille  <akim@epita.fr>
+
+       Use more STL like names: my_class instead of MyClass.
+
+       * data/lalr1.cc (LocationStack, LocationType, RhsNumberType)
+       (SemanticStack, SemanticType, StateStack, StateType)
+       (TokenNumberType, Stack, Slice, Traits, Parser::location)
+       (Parser::value): Rename as...
+       (location_stack, location_type, rhs_number_type, semantic_stack)
+       (semantic_type, state_stack, state_type, token_number_type, stack)
+       (slice, traits, parser::yylloc, parser::yylval): these.
+
+       * tests/calc.at, tests/regression.at, tests/actions.at: Adjust.
+
+2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/glr.c (YYLLOC_DEFAULT): Use GNU spacing conventions.
+       * data/yacc.c (YYLLOC_DEFAULT): Likewise.
+
+2004-12-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Remove uses of 'short int' and 'unsigned short int'.  This raises
+       some arbitrary limits.  It uses more memory but nowadays that's
+       not much of an issue.
+
+       This change does not affect the generated parsers; that's a different
+       task, as some users will want to conserve memory there.
+
+       Ideally we should use size_t to represent all object counts, and
+       something like ptrdiff_t to represent signed differences of object
+       counts; but that will require more code-cleanup than I have the
+       time to do right now.
+
+       * src/LR0.c (allocate_itemsets, new_itemsets, save_reductions):
+       Use size_t, not int or short int, to count objects.
+       * src/closure.c (nritemset, closure): Likewise.
+       * src/closure.h (nritemset, closure): Likewise.
+       * src/nullable.c (nullable_compute): Likewise.
+       * src/print.c (print_core): Likewise.
+       * src/print_graph.c (print_core): Likewise.
+       * src/state.c (state_compare, state_hash): Likewise.
+       * src/state.h (struct state): Likewise.
+       * src/tables.c (default_goto, goto_actions): Likewise.
+
+       * src/gram.h (rule_number, rule): Use int, not short int.
+       * src/output.c (prepare_rules): Likewise.
+       * src/state.h (state_number, STATE_NUMBER_MAXIMUM, transitions,
+       errs, reductions): Likewise.
+       * src/symtab.h (symbol_number, SYMBOL_NUMBER_MAXIMUM, struct symbol):
+       Likewise.
+       * src/tables.c (vector_number, tally, action_number,
+       ACTION_NUMBER_MINIMUM): Likewise.
+       * src/output.c (muscle_insert_short_int_table): Remove.
+
+2004-12-17  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc: Extensive Doxygenation.
+       (error_): Rename as...
+       (error): this, since it is visible to the user.
+       Adjust callers.
+       (Parser::message): Now an automatic variable from...
+       (Parser::yyreport_syntax_error_): here.
+       * tests/actions.at, tests/calc.at, tests/regression.at: Adjust to
+       Parser::error.
+       * tests/input.at: Escape $.
+
+2004-12-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/glr.c (b4_lhs_value, b4_rhs_value, b4_rhs-location):
+       Parenthesize rhs to avoid obscure problems with mistakes like
+       "foo$$bar = foo$1bar;".  Problem reported by twlevo at xs4all.
+       * data/lalr1.cc (b4_lhs_value, b4_rhs_value, b4_lhs_location,
+       b4_rhs_location): Likewise.
+       * data/yacc.c (b4_lhs_value, b4_rhs_value, b4_lhs_location,
+       b4_rhs_location): Likewise.
+
+2004-12-16  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (yyreport_syntax_error_): Catch up with glr.c and
+       yacc.c: be sure to stay within yycheck_.
+       * tests/actions.at: Re-enable C++ tests.
+
+2004-12-16  Akim Demaille  <akim@epita.fr>
+
+       * src/print_graph.c (print_graph): Remove layoutalgorithm uses for
+       real.
+
+2004-12-16  Akim Demaille  <akim@epita.fr>
+
+       Use #define to handle the %name-prefix.
+
+       * data/glr.c, data/yacc.c: Comment changes.
+       * data/lalr1.cc (yylex): Use #define to select the name of yylex,
+       so that one can refer to yylex in the parser file, and have it
+       renamed, as is the case with other skeletons.
+
+2004-12-16  Akim Demaille  <akim@epita.fr>
+
+       Move lalr1.cc internals into yy*.
+
+       * data/lalr1.cc (semantic_stack_, location_stack_, state_stack_)
+       (semantic_stack_, location_stack_, pact_, pact_ninf_, defact_)
+       (pgoto_, defgoto_, table_, table_ninf_, check_, stos_, r1_, r2_)
+       (name_, rhs_, prhs_, rline_, token_number_, eof_, last_, nnts_)
+       (empty_, final_, terror_, errcode_, ntokens_)
+       (user_token_number_max_, undef_token_, n_, len_, state_, nerrs_)
+       (looka_, ilooka_, error_range_, nerrs_):
+       Rename as...
+       (yysemantic_stack_, yylocation_stack_, yystate_stack_)
+       (yysemantic_stack_, yylocation_stack_, yypact_, yypact_ninf_)
+       (yydefact_, yypgoto_, yydefgoto_, yytable_, yytable_ninf_)
+       (yycheck_, yystos_, yyr1_, yyr2_, yyname_, yyrhs_, yyprhs_)
+       (yyrline_, yytoken_number_, yyeof_, yylast_, yynnts_, yyempty_)
+       (yyfinal_, yyterror_, yyerrcode_, yyntokens_)
+       (yyuser_token_number_max_, yyundef_token_, yyn_, yylen_, yystate_)
+       (yynerrs_, yylooka_, yyilooka_, yyerror_range_, yynerrs_):
+       these.
+
+2004-12-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix some problems reported by twlevo at xs4all.
+       * src/symtab.c (symbol_new): Report an error if the input grammar
+       contains too many symbols.  This is better than calling abort() later.
+       * src/vcg.h (enum layoutalgorithm): Remove.  All uses removed.
+       (struct node, struct graph):
+       Rename member expand to stretch.  All uses changed.
+       (struct graph): Remove member layoutalgorithm.  All uses removed.
+       * src/vcg.c (get_layoutalgorithm_str): Remove.  All uses removed.
+       * src/vcg_defaults.h (G_STRETCH): Renamed from G_EXPAND.
+       All uses changed.
+       (N_STRETCH): Rename from N_EXPAND.  All uses changed.
+
+2004-12-15  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc: Normalize /** \brief ... */ to ///.
+       Add more Doxygen comments.
+       (symprint_, stack_print_, reduce_print_, destruct_, pop)
+       (report_syntax_error_, translate_): Rename as...
+       (yysymprint_, yystack_print_, yyreduce_print_, yydestruct_)
+       (yypop_, yyreport_syntax_error_, yytranslate_): this.
+
+2004-12-15  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (lex_): Rename as...
+       (yylex_): this.
+       Move the trace here.
+       Take the %name-prefix into account.
+       Reported by Alexandre Duret-Lutz.
+
+2004-12-15  Akim Demaille  <akim@epita.fr>
+
+       Simplify the C++ parser constructor.
+
+       * data/lalr1.cc (debug_): Rename as...
+       (yydebug_): so that the parser's internals are always in the yy*
+       pseudo namespace.
+       Adjust uses.
+       (b4_parse_param_decl): Remove the leading comma as it is now only
+       called as unique argument list.
+       (Parser::Parser): Remove the constructor accepting a location and
+       an initial debugging level.
+       Remove from the other ctor the argument for the debugging level.
+       (debug_level_type, debug_level, set_debug_level): New.
+
+       * tests/actions.at, tests/calc.at, tests/regression.at: Adjust
+       constructor calls.
+
+2004-12-15  Akim Demaille  <akim@epita.fr>
+
+       Remove b4_root related material: failure experiment
+       (which goal was to allow to derive from a class).
+
+       * data/lalr1.cc (b4_root, b4_param, b4_constructor): Remove
+       definitions and uses.
+
+2004-12-14  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/glr.c (struct yyGLRStack): yyerror_range now has 3 items,
+       not 2, since it's not portable to subtract 1 from the start of an
+       array.  The new item 0 is never set or used.  All uses changed.
+
+       (yyrecoverSyntaxError): Use YYLLOC_DEFAULT instead of assuming
+       the default definition of YYLLOC_DEFAULT.  Problem reported
+       by Frank Heckenbach.
+
+2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/glr.c (YYRHSLOC): Don't have two definitions, one for
+       the normal case and one for the error case.  Just use the
+       first one uniformly.  Problem reported by Frank Heckenbach.
+       (YYLLOC_DEFAULT): Use the conventions of yacc.c, so we can
+       use exactly the same macro in both places.
+       (yyerror_range): Now of type yyGLRStackItem, not YYLTYPE,
+       so that the normal-case YYRHSLOC works for the error case too.
+       All uses changed.
+       * data/yacc.c (YYRHSLOC): New macro, taken from glr.c.
+       (YYLLOC_DEFAULT): Use the same macro as glr.c.
+       * doc/bison.texinfo (Location Default Action): Don't claim that
+       we have an array of locations.  Use the same macro for both glr
+       and lalr parsers.  Mention YYRHSLOC.  Mention what happens when
+       the index is 0.
+
+2004-12-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * HACKING: Update email addresses to send announcements to.
+
+       * configure.ac (AC_INIT): Bump version to 1.875f.
+
+2004-12-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: Version 1.875e.
+       * src/parse-gram.c, src/parse-gram.h: Regenerate with 1.875e.
+
+       * src/scan-skel.l: Include "complain.h", for "fatal".
+
+       * src/relation.h (relation_print, relation_digraph):
+       Relation sizes are of type relation_node, not size_t (this is
+       merely a doc fix, since the two types are equivalent).
+       (relation_transpose): Relation sizes are of type relation_node,
+       not int.
+       * src/relation.c: Likewise.
+       (top, infinity): Now of type relation_node, not int.
+       (traverse, relation_transpose): Use relation_node, not int.
+
+       * data/glr.c (yyuserAction, yyrecoverSyntaxError): Mark args
+       with ATTRIBUTE_UNUSED if they're not used, to avoid GCC warning.
+       (yyparse): Remove unused local introduced in 2004-10-25 patch.
+
+       * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): New arg
+       specifying whether the test should be skipped.  Use it tp
+       specify that the [%defines %skeleton "lalr1.cc"] tests currently
+       fail on some hosts, and should be skipped.
+
+2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/system.h (CALLOC, MALLOC, REALLOC): Remove.  All callers
+       changed to use xcalloc, xnmalloc, xnrealloc, respectively,
+       unless otherwise specified below.
+
+       * src/LR0.c (allocate_itemsets): Use xnmalloc, not xcalloc,
+       to allocate kernel_base, kernel_items, kernel_size, since
+       they needn't be initialized to 0.
+       (allocate_storgae): Likewise, for shiftset, redset, shift_symbol.
+       * src/closure.c (new_closure): Likewise, for itemset.
+       * src/derives.c (derives_compute): Likewise, for delts, derives, q.
+       * src/lalr.c (set_goto_map): Likewise, for temp_map.
+       (initialize_F): Likewise, for reads, edge, reads[i], includes[i].
+       (build_relations): Likewise for edge, states1, includes.
+       * src/nullable.c (nullable_compute): Likewise, for squeue, relts.
+       * src/reader.c (packgram): Likewise, for ritem, rules.
+       * src/reduce.c (nonterminals_reduce): Likewise for nontermmap.
+       * src/relation.c (relation_digraph): Likewise for VERTICES.
+       (relation_transpose): Likewise for new_R, end_R.
+       * src/symtab.c (symbols_token_translations_init): Likewise for
+       token_translations.
+       * src/tables.c (save_row): Likewise for froms, tos, conflict_tos.
+       (token_actions): Likewise for yydefact, actrow, conflrow,
+       conflict_list.
+       (save_column): Likewise for froms[symno], tos[symno].
+       (goto_actions): Likewise for state_count.
+       (pack_table): Likewise for base, pos, check.
+       (tables_generate): Likewise for width.
+
+       * src/LR0.c (set_states): Don't reuse kernel_size and kernel_base
+       for initial core.  Just have a separate core, so we needn't worry
+       about whether kernel_size and kernel_base are initialized.
+
+       * src/LR0.c (shift_symbol, redset, shiftset, kernel_base,
+       kernel_size, kernel_items): Remove unnecessary initialization.
+       * src/conflicts.c (conflicts): Likewise.
+       * src/derives.c (derives): Likewise.
+       * src/muscle_tablc (muscle_insert): Likewise.
+       * src/relation.c (relation_digraph): Likewise.
+       * src/tables.c (froms, tos, conflict_tos, tally, width, actrow, order,
+       conflrow, conflict_table, conflict_list, table, check):
+       Likewise.
+
+       * src/closure.c (new_closure): Arg is of type unsigned int, not int.
+       This is because all callers pass unsigned int.
+       * src/closure.h (new_closure): Likewise.
+
+       * src/lalr.c (initialize_F): Initialize reads[i] in all cases.
+       (build_relations): Initialize includes[i] in all cases.
+       * src/reader.c (packgram): Always initialize rules[ruleno].prec
+       and rules[ruleno].precsym.  Initialize members in order.
+       * src/relation.c (relation_transpose): Always initialize new_R[i]
+       and end_R[i].
+       * src/table.c (conflict_row): Initialize 0 at end of conflict_list.
+
+       * src/output.c (prepare_actions): Pass 0 instead of conflict_list[0];
+       conflict_list[0] was always 0, but now it isn't initialized.
+
+       * src/table.c (table_grow): When conflict_table grew, the grown
+       area wasn't cleared.  Fix this.
+
+       * lib/.cvsignore: Add strdup.c, strdup.h.
+       * m4/.cvsignore: Add strdup.m4.
+
+2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/lalr.h (GOTO_NUMBER_MAXIMUM): New macro.
+       * src/lalr.c (set_goto_map): Don't allow ngotos to equal
+       GOTO_NUMBER_MAXIMUM, since we occasionally compute
+       ngotos + 1 without checking for overflow.
+       (build_relations): Use END_NODE, not -1, to denote end of edges.
+       * src/lalr.c (set_goto_map, map_goto, initialize_F, add_loopback_edge,
+       build_relations): Use goto_number, not int, for goto numbers.
+       * src/tables.c (save_column, default_goto): Likewise.
+
+2004-11-23  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (YYSTYPE): Define it as is done for C, instead
+       of #defining from yystype.
+       Don't typedef yystype, C++ does not need it.
+       This lets it possible to forward declare it as union.
+
+2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * bootstrap (gnulib_modules): Add extensions.
+       Problem reported by Jim Meyering.
+
+2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/LR0.c, src/closure.c, src/derives.c, src/gram.c,
+       src/lalr.c, src/nullable.c, src/relation.c, src/scan-skel.l,
+       src/system.h, src/tables.c: XFREE -> free, to accommodate
+       recent change to gnulib xalloc.h.
+       Problem reported by Jim Meyering.
+
+2004-11-17  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (symprint_): Use cdebug_ to avoid warnings.
+
 2004-10-28  Akim Demaille  <akim@epita.fr>,
            Alexandre Duret-Lutz <adl@gnu.org>
 
 2004-10-28  Akim Demaille  <akim@epita.fr>,
            Alexandre Duret-Lutz <adl@gnu.org>
 
        * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Use
        debug_stream ().
 
        * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Use
        debug_stream ().
 
+2004-11-17  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (Parser:print_): Remove, use %printer instead.
+       * tests/regression.at (_AT_DATA_DANCER_Y): Adjust.
+       * tests/calc.at (_AT_DATA_CALC_Y): Ditto.
+       * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Likewise.
+
 2004-10-27  Paul Eggert  <eggert@cs.ucla.edu>
 
        * data/glr.c (yyloc_default): Remove; not used.
 2004-10-27  Paul Eggert  <eggert@cs.ucla.edu>
 
        * data/glr.c (yyloc_default): Remove; not used.
 
        * src/parse-gram.y (lloc_default): Rewrite to avoid compiler bug
        in SGI MIPSpro 7.4.1m.  Problem reported by Albert Chin-A-Young in
 
        * src/parse-gram.y (lloc_default): Rewrite to avoid compiler bug
        in SGI MIPSpro 7.4.1m.  Problem reported by Albert Chin-A-Young in
-       <http://mail.gnu.org/archive/html/bug-bison/2004-05/msg00037.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2004-05/msg00037.html>.
 
        * configure.ac (AC_PREREQ): Bump to 2.58, since 2.57 doesn't work
        (it fails with a Autoconf-without-aclocal-m4 diagnostic).
 
        * configure.ac (AC_PREREQ): Bump to 2.58, since 2.57 doesn't work
        (it fails with a Autoconf-without-aclocal-m4 diagnostic).
        Ensure that the C++ compiler used for testing actually works on a
        simple test program; if not, skip the C++-related tests.  Problem
        reported by Vin Shelton in:
        Ensure that the C++ compiler used for testing actually works on a
        simple test program; if not, skip the C++-related tests.  Problem
        reported by Vin Shelton in:
-       http://mail.gnu.org/archive/html/bug-bison/2004-05/msg00026.html
+       http://lists.gnu.org/archive/html/bug-bison/2004-05/msg00026.html
 
        * m4/cxx.m4: New file.
        * configure.ac (BISON_TEST_FOR_WORKING_CXX_COMPILER): Add.
 
        * m4/cxx.m4: New file.
        * configure.ac (BISON_TEST_FOR_WORKING_CXX_COMPILER): Add.
 2004-03-08  Paul Eggert  <eggert@gnu.org>
 
        Add support for hex token numbers.  Suggested by Odd Arild Olsen in
 2004-03-08  Paul Eggert  <eggert@gnu.org>
 
        Add support for hex token numbers.  Suggested by Odd Arild Olsen in
-       <http://mail.gnu.org/archive/html/bison-patches/2004-03/msg00000.html>.
+       <http://lists.gnu.org/archive/html/bison-patches/2004-03/msg00000.html>.
 
        * NEWS: Document hexadecimal tokens, no NUL bytes, %destructor
        in lalr1.cc.
 
        * NEWS: Document hexadecimal tokens, no NUL bytes, %destructor
        in lalr1.cc.
        * tests/local.at (AT_COMPILE, AT_COMPILE_CXX): Ignore stdout from
        compilers.  This fixes a problem with Intel's C++ compiler being
        chatty, reported by Guido Trentalancia in
        * tests/local.at (AT_COMPILE, AT_COMPILE_CXX): Ignore stdout from
        compilers.  This fixes a problem with Intel's C++ compiler being
        chatty, reported by Guido Trentalancia in
-       <http://mail.gnu.org/archive/html/bug-bison/2004-02/msg00030.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2004-02/msg00030.html>.
 
 2004-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
 
 
 2004-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
 
 
        Have lalr1.cc catch with Paul Eggert's patch to fix the infinite
        error recovery loops.  This patch is based on
 
        Have lalr1.cc catch with Paul Eggert's patch to fix the infinite
        error recovery loops.  This patch is based on
-       <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00000.html>.
+       <http://lists.gnu.org/archive/html/bison-patches/2003-06/msg00000.html>.
        Also, augment the similarity between lalr1.cc and yacc.c.
        Note: the locations of error recovery rules are not correct yet.
 
        Also, augment the similarity between lalr1.cc and yacc.c.
        Note: the locations of error recovery rules are not correct yet.
 
 
        * data/glr.c (yyglrReduce): Don't use C89 string concatenation,
        for portability to K&R C (after ansi2knr, presumably).  See
 
        * data/glr.c (yyglrReduce): Don't use C89 string concatenation,
        for portability to K&R C (after ansi2knr, presumably).  See
-       <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00041.html>
+       <http://lists.gnu.org/archive/html/bison-patches/2003-06/msg00041.html>
        by Frank Heckenbach, though I have omitted the structure-initialization
        part of his glr-knr.diff patch since I recall that the Portable
        C Compiler didn't require that change.
 
        Let the user specify how to allocate and free memory.
        Derived from a suggestion by Frank Heckenbach in
        by Frank Heckenbach, though I have omitted the structure-initialization
        part of his glr-knr.diff patch since I recall that the Portable
        C Compiler didn't require that change.
 
        Let the user specify how to allocate and free memory.
        Derived from a suggestion by Frank Heckenbach in
-       <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00041.html>.
+       <http://lists.gnu.org/archive/html/bison-patches/2003-06/msg00041.html>.
        * data/glr.c (YYFREE, YYMALLOC, YYREALLOC): New macros.
        All uses of free, malloc, realloc changed to use these macros,
        and unnecessary casts removed.
        * data/glr.c (YYFREE, YYMALLOC, YYREALLOC): New macros.
        All uses of free, malloc, realloc changed to use these macros,
        and unnecessary casts removed.
 
        * data/lalr1.cc (operator<<(std::ostream&, const Position&)):
        use s.empty() rather than s == "" to test for empty string; see
 
        * data/lalr1.cc (operator<<(std::ostream&, const Position&)):
        use s.empty() rather than s == "" to test for empty string; see
-       <http://mail.gnu.org/archive/html/bison-patches/2003-07/msg00003.html>
+       <http://lists.gnu.org/archive/html/bison-patches/2003-07/msg00003.html>
        (trivial change)
 
 2003-06-25  Akim Demaille  <akim@epita.fr>
        (trivial change)
 
 2003-06-25  Akim Demaille  <akim@epita.fr>
        yyreportTree): Do not assume that size_t is the same width as int,
        when printing sizes.  Print sizes using an unsigned format.
        Problem reported by Frank Heckenbach in
        yyreportTree): Do not assume that size_t is the same width as int,
        when printing sizes.  Print sizes using an unsigned format.
        Problem reported by Frank Heckenbach in
-       <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00035.html>.
+       <http://lists.gnu.org/archive/html/bison-patches/2003-06/msg00035.html>.
 
        Port to Forte Developer 7 C compiler.
        * data/glr.c (struct YYLTYPE): If locations are not being used,
 
        Port to Forte Developer 7 C compiler.
        * data/glr.c (struct YYLTYPE): If locations are not being used,
        (ATTRIBUTE_UNUSED): Define unconditionally.
 
        Upgrade to 2003-06-08 libbitset, submitted by Michael Hayes in:
        (ATTRIBUTE_UNUSED): Define unconditionally.
 
        Upgrade to 2003-06-08 libbitset, submitted by Michael Hayes in:
-       <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html>
+       <http://lists.gnu.org/archive/html/bison-patches/2003-06/msg00005.html>
        * lib/Makefile.am (bitsets_sources): Add vbitset.c, vbitset.h.
        * lib/vbitset.c, lib/vbitset.h: New files.
        * lib/abitset.c, lib/bbitset.h, lib/bitset.c, lib/bitset.h,
        * lib/Makefile.am (bitsets_sources): Add vbitset.c, vbitset.h.
        * lib/vbitset.c, lib/vbitset.h: New files.
        * lib/abitset.c, lib/bbitset.h, lib/bitset.c, lib/bitset.h,
        * tests/local.at (AT_COMPILE_CXX): Use it instead of CFLAGS.
 
        Fix a GLR parser bug I reported in February; see
        * tests/local.at (AT_COMPILE_CXX): Use it instead of CFLAGS.
 
        Fix a GLR parser bug I reported in February; see
-       <http://mail.gnu.org/archive/html/bison-patches/2003-02/msg00008.html>.
+       <http://lists.gnu.org/archive/html/bison-patches/2003-02/msg00008.html>.
        The problem was that GLR parsers did not conform to the C standard,
        because actions like { $1 = $2 + $3; } expanded to expressions
        that invoked YYFILL in separate subexpressions, and YYFILL assigned
        The problem was that GLR parsers did not conform to the C standard,
        because actions like { $1 = $2 + $3; } expanded to expressions
        that invoked YYFILL in separate subexpressions, and YYFILL assigned
        parser can loop.  Provide a test case and a fix for yacc.c.  I
        don't have a fix for lalr1.cc or for glr.c, unfortunately.
        The original bug report is in:
        parser can loop.  Provide a test case and a fix for yacc.c.  I
        don't have a fix for lalr1.cc or for glr.c, unfortunately.
        The original bug report is in:
-       <http://mail.gnu.org/archive/html/bison-patches/2003-02/msg00044.html>
+       <http://lists.gnu.org/archive/html/bison-patches/2003-02/msg00044.html>
 
        * data/yacc.c (YYERROR): Now just 'goto yyerrorlab', since the
        macro's size was becoming unwieldy.
 
        * data/yacc.c (YYERROR): Now just 'goto yyerrorlab', since the
        macro's size was becoming unwieldy.
        * lib/bitset.h (__INT_TO_PTR): Define to a value that presumes
        C89.  This avoids a diagnostic on compilers that define __STDC__
        to 0, fixing a problem with Tru64 cc reported by Martin Mokrejs in
        * lib/bitset.h (__INT_TO_PTR): Define to a value that presumes
        C89.  This avoids a diagnostic on compilers that define __STDC__
        to 0, fixing a problem with Tru64 cc reported by Martin Mokrejs in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00041.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-04/msg00041.html>.
 
 2003-05-03  Paul Eggert  <eggert@twinsun.com>
 
        * lib/bitset.h (BITSET_FOR_EACH, BITSET_FOR_EACH_REVERSE):
        Do not overrun array bounds.
        This should fix a bug reported today by Olatunji Oluwabukunmi in
 
 2003-05-03  Paul Eggert  <eggert@twinsun.com>
 
        * lib/bitset.h (BITSET_FOR_EACH, BITSET_FOR_EACH_REVERSE):
        Do not overrun array bounds.
        This should fix a bug reported today by Olatunji Oluwabukunmi in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-05/msg00004.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-05/msg00004.html>.
 
 2003-04-29  Akim Demaille  <akim@epita.fr>
 
 
 2003-04-29  Akim Demaille  <akim@epita.fr>
 
 2003-04-27  Paul Eggert  <eggert@twinsun.com>
 
        Avoid gcc -Wundef warnings reported by Gerald Pfeifer in
 2003-04-27  Paul Eggert  <eggert@twinsun.com>
 
        Avoid gcc -Wundef warnings reported by Gerald Pfeifer in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00044.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-04/msg00044.html>.
        * data/yacc.c (YYSTACK_ALLOC): Don't evaluate YYSTACK_USE_ALLOCA
        if it is not defined.
        (YYMAXDEPTH): Don't evaluate YYMAXDEPTH if it is not defined.
        * data/yacc.c (YYSTACK_ALLOC): Don't evaluate YYSTACK_USE_ALLOCA
        if it is not defined.
        (YYMAXDEPTH): Don't evaluate YYMAXDEPTH if it is not defined.
        type suitable for the corresponding table, since the latter might
        be unsigned but the ninf value might be negative.  This fixes a
        bug reported by Alexandre Duret-Lutz in
        type suitable for the corresponding table, since the latter might
        be unsigned but the ninf value might be negative.  This fixes a
        bug reported by Alexandre Duret-Lutz in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00017.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-04/msg00017.html>.
 
        * configure.ac (AC_FUNC_ERROR_AT_LINE): Remove, since gl_ERROR
        invokes it.  We shouldn't invoke it twice because it will attempt
        to put error.o in the archive twice.  This fixes a glitch reported
        by Martin Mokrejs in
 
        * configure.ac (AC_FUNC_ERROR_AT_LINE): Remove, since gl_ERROR
        invokes it.  We shouldn't invoke it twice because it will attempt
        to put error.o in the archive twice.  This fixes a glitch reported
        by Martin Mokrejs in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00041.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-04/msg00041.html>.
 
 2003-04-21  Paul Eggert  <eggert@twinsun.com>
 
 
 2003-04-21  Paul Eggert  <eggert@twinsun.com>
 
        * src/conflicts.c (set_conflicts): Resolve all conflicts, not just
        the first one.  This change is from Paul Hilfinger, and it fixes
        regression reported by Werner Lemberg in
        * src/conflicts.c (set_conflicts): Resolve all conflicts, not just
        the first one.  This change is from Paul Hilfinger, and it fixes
        regression reported by Werner Lemberg in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00026.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-04/msg00026.html>.
 
        (resolve_sr_conflict): Don't invoke state_errs_set
        unless one or more tokens have been explicitly made errors.
 
        (resolve_sr_conflict): Don't invoke state_errs_set
        unless one or more tokens have been explicitly made errors.
        (<INITIAL><<EOF>>, <SC_PRE_CODE><<EOF>>): Set *loc to the scanner
        cursor, instead of leaving it undefined.  This fixes a bug
        reported by Tim Van Holder in
        (<INITIAL><<EOF>>, <SC_PRE_CODE><<EOF>>): Set *loc to the scanner
        cursor, instead of leaving it undefined.  This fixes a bug
        reported by Tim Van Holder in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00023.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-03/msg00023.html>.
        * tests/input.at (Torturing the Scanner): Test the scanner on
        an empty input file, which was Tim Van Holder's test case.
 
        * tests/input.at (Torturing the Scanner): Test the scanner on
        an empty input file, which was Tim Van Holder's test case.
 
        <sys/resource.h> can be included, include sys/time.h and
        sys/times.h first, if available.  This works around the SunOS
        4.1.4 porting bug reported by Bruce Becker in
        <sys/resource.h> can be included, include sys/time.h and
        sys/times.h first, if available.  This works around the SunOS
        4.1.4 porting bug reported by Bruce Becker in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00018.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-03/msg00018.html>.
 
        * m4/subpipe.m4 (BISON_PREREQ_SUBPIPE): Don't
        AC_CHECK_HEADERS([sys/wait.h]), as this interferes with
 
        * m4/subpipe.m4 (BISON_PREREQ_SUBPIPE): Don't
        AC_CHECK_HEADERS([sys/wait.h]), as this interferes with
 
        * lib/mbswidth.c: Include <wchar.h> before "mbswidth.h", to work
        around a UnixWare 7.1.1 porting bug reported by John Hughes in
 
        * lib/mbswidth.c: Include <wchar.h> before "mbswidth.h", to work
        around a UnixWare 7.1.1 porting bug reported by John Hughes in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-02/msg00030.html>.
 
 2003-02-26  Paul Eggert  <eggert@twinsun.com>
 
 
 2003-02-26  Paul Eggert  <eggert@twinsun.com>
 
        * data/glr.c (yy_reduce_print): yylineno -> yylno,
        to avoid collision with flex use of yylineno.
        Problem reported by Bruce Lilly in
        * data/glr.c (yy_reduce_print): yylineno -> yylno,
        to avoid collision with flex use of yylineno.
        Problem reported by Bruce Lilly in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00016.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-02/msg00016.html>.
        * data/lalr1.cc (yy::]b4_parser_class_name[::parse): Likewise.
        * data/yacc.c (yy_reduce_print): Likewise.
 
        * data/lalr1.cc (yy::]b4_parser_class_name[::parse): Likewise.
        * data/yacc.c (yy_reduce_print): Likewise.
 
        * tests/atlocal.in (LDFLAGS, LIBS): New vars.
        * tests/testsuite.at (AT_COMPILE): Use them.
        This fixes the testsuite problem reported by Robert Lentz in
        * tests/atlocal.in (LDFLAGS, LIBS): New vars.
        * tests/testsuite.at (AT_COMPILE): Use them.
        This fixes the testsuite problem reported by Robert Lentz in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00011.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-02/msg00011.html>.
 
 2003-02-12  Paul Eggert  <eggert@twinsun.com>
 
        * data/yacc.c (yyerrlab) [YYERROR_VERBOSE]:
        Avoid subscript error in yycheck.  Bug reported by Andrew Suffield in
 
 2003-02-12  Paul Eggert  <eggert@twinsun.com>
 
        * data/yacc.c (yyerrlab) [YYERROR_VERBOSE]:
        Avoid subscript error in yycheck.  Bug reported by Andrew Suffield in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00003.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-02/msg00003.html>.
        * data/glr.c (yyreportSyntaxError) [YYERROR_VERBOSE]: Likewise.
        Check for malloc failure, for consistency with yacc.c.
        (yytname_size): Remove, for consistency with yacc.c.
        * data/glr.c (yyreportSyntaxError) [YYERROR_VERBOSE]: Likewise.
        Check for malloc failure, for consistency with yacc.c.
        (yytname_size): Remove, for consistency with yacc.c.
 
        Changes in response to error report by S. Eken: GLR mode does not
        handle negative $ indices or $ indices in embedded rules correctly.
 
        Changes in response to error report by S. Eken: GLR mode does not
        handle negative $ indices or $ indices in embedded rules correctly.
-       See <http://mail.gnu.org/archive/html/bug-bison/2003-01/msg00076.html>.
+       See <http://lists.gnu.org/archive/html/bug-bison/2003-01/msg00076.html>.
 
        * data/glr.c (b4_rhs_value): Change to use YYFILL macro.
        (b4_rhs_location): Ditto.
 
        * data/glr.c (b4_rhs_value): Change to use YYFILL macro.
        (b4_rhs_location): Ditto.
        * data/lalr1.cc: Do not use @output_header_name@ unless
        b4_defines_flag is set.  This fixes two bugs reported by
        Tim Van Holder in
        * data/lalr1.cc: Do not use @output_header_name@ unless
        b4_defines_flag is set.  This fixes two bugs reported by
        Tim Van Holder in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-01/msg00071.html>
-       and <http://mail.gnu.org/archive/html/bug-bison/2003-01/msg00073.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-01/msg00071.html>
+       and <http://lists.gnu.org/archive/html/bug-bison/2003-01/msg00073.html>.
 
 2003-01-21  Paul Eggert  <eggert@twinsun.com>
 
 
 2003-01-21  Paul Eggert  <eggert@twinsun.com>
 
 
        * src/output.c (symbol_printers_output): Fix typo that led
        to core dump.  Problem reported by Antonio Rus in
 
        * src/output.c (symbol_printers_output): Fix typo that led
        to core dump.  Problem reported by Antonio Rus in
-       <http://mail.gnu.org/archive/html/bug-bison/2003-01/msg00058.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-01/msg00058.html>.
 
 2003-01-13  Akim Demaille  <akim@epita.fr>,
                Quoc Peyrot <chojin@lrde.epita.fr>,
 
 2003-01-13  Akim Demaille  <akim@epita.fr>,
                Quoc Peyrot <chojin@lrde.epita.fr>,
        * NEWS: %expect-violations are now just warnings, reverting
        to Bison 1.30 and 1.75 behavior.  This fixes the GCC 3.2
        bootstrapping problem reported by Matthias Klose; see
        * NEWS: %expect-violations are now just warnings, reverting
        to Bison 1.30 and 1.75 behavior.  This fixes the GCC 3.2
        bootstrapping problem reported by Matthias Klose; see
-       <http://mail.gnu.org/archive/html/bug-bison/2003-01/msg00053.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2003-01/msg00053.html>.
        * src/conflicts.c (conflicts_print): Likewise.
        * tests/conflicts.at (%expect not enough, %expect too much,
        %expect with reduce conflicts): Likewise.
        * src/conflicts.c (conflicts_print): Likewise.
        * tests/conflicts.at (%expect not enough, %expect too much,
        %expect with reduce conflicts): Likewise.
 
        Fix a bug where error locations were not being recorded correctly.
        This problem was originally reported by Paul Hilfinger in
 
        Fix a bug where error locations were not being recorded correctly.
        This problem was originally reported by Paul Hilfinger in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00086.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00086.html>.
 
        * data/yacc.c (yyparse): New local var yylerrsp, to record the
        top of the location stack's error locations.
 
        * data/yacc.c (yyparse): New local var yylerrsp, to record the
        top of the location stack's error locations.
 
        Remove obsolete references to bison.simple and bison.hairy.
        Problem mentioned by Aubin Mahe in
 
        Remove obsolete references to bison.simple and bison.hairy.
        Problem mentioned by Aubin Mahe in
-       <http://mail.gnu.org/archive/html/help-bison/2002-12/msg00010.html>.
+       <http://lists.gnu.org/archive/html/help-bison/2002-12/msg00010.html>.
        * data/glr.c: Comment fix.
        * doc/bison.1: Remove references.  Also, mention "yacc".
 
        * data/glr.c: Comment fix.
        * doc/bison.1: Remove references.  Also, mention "yacc".
 
        * config/install-sh: Sync with autotools.
 
        Fix a bad interaction with flex 2.5.23 reported by Bruce Lilly in
        * config/install-sh: Sync with autotools.
 
        Fix a bad interaction with flex 2.5.23 reported by Bruce Lilly in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00114.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00114.html>.
        * data/yacc.c (YYLTYPE, struct yyltype): Do not define unless
        locations are requested.
        (union yyalloc): Do not depend on YYLTYPE_IS_TRIVIAL unless
        * data/yacc.c (YYLTYPE, struct yyltype): Do not define unless
        locations are requested.
        (union yyalloc): Do not depend on YYLTYPE_IS_TRIVIAL unless
        sequences like "@" that are treated specially by src/scan-skel.l.
        Instead, just use the file's basename.  This fixes the bug
        reported by Martin Mokrejs in
        sequences like "@" that are treated specially by src/scan-skel.l.
        Instead, just use the file's basename.  This fixes the bug
        reported by Martin Mokrejs in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-12/msg00007.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-12/msg00007.html>.
 
 2002-12-06  Paul Eggert  <eggert@twinsun.com>
 
 
 2002-12-06  Paul Eggert  <eggert@twinsun.com>
 
        * configure.ac (AC_REPLACE_FUNCS): Add strtoul.
        * lib/strtoul.c: New file, from gnulib.
        This fixes a porting bug reported by Peter Klein in
        * configure.ac (AC_REPLACE_FUNCS): Add strtoul.
        * lib/strtoul.c: New file, from gnulib.
        This fixes a porting bug reported by Peter Klein in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-12/msg00000.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-12/msg00000.html>.
 
 2002-11-30  Paul Eggert  <eggert@twinsun.com>
 
 
 2002-11-30  Paul Eggert  <eggert@twinsun.com>
 
 
        * data/c.m4 (b4_yysymprint_generate): yyout -> yyoutput,
        to avoid collision with lex macro described by Bruce Lilly in
 
        * data/c.m4 (b4_yysymprint_generate): yyout -> yyoutput,
        to avoid collision with lex macro described by Bruce Lilly in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00114.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00114.html>.
        * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Likewise.
        * doc/bison.texinfo (Prologue, Tracing): yyprint -> print_token_value.
        * src/parse-gram.y (print_token_value): Renamed from yyprint.
        * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Likewise.
        * doc/bison.texinfo (Prologue, Tracing): yyprint -> print_token_value.
        * src/parse-gram.y (print_token_value): Renamed from yyprint.
        * data/glr.c (yygetLRActions): Replace `yyindex' with
        `yytable[yyindex]' to fix typo introduced in my 2002-11-09 patch.
        This fixes the regression with Sun ONE Studio 7 cc that I reported in
        * data/glr.c (yygetLRActions): Replace `yyindex' with
        `yytable[yyindex]' to fix typo introduced in my 2002-11-09 patch.
        This fixes the regression with Sun ONE Studio 7 cc that I reported in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00077.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00077.html>.
 
 2002-11-18  Akim Demaille  <akim@epita.fr>
 
 
 2002-11-18  Akim Demaille  <akim@epita.fr>
 
        duplicating xfopen's body.
 
        Fix bugs reported by Nelson H. F. Beebe in
        duplicating xfopen's body.
 
        Fix bugs reported by Nelson H. F. Beebe in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00078.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00078.html>.
 
        * tests/headers.at (AT_TEST_CPP_GUARD_H): Don't assume that
        "$CC -E foo.h" is allowed, as this doesn't work with the Portland
 
        * tests/headers.at (AT_TEST_CPP_GUARD_H): Don't assume that
        "$CC -E foo.h" is allowed, as this doesn't work with the Portland
 2002-11-13  Paul Eggert  <eggert@twinsun.com>
 
        Fix some bugs reported by Albert Chin-A-Young in
 2002-11-13  Paul Eggert  <eggert@twinsun.com>
 
        Fix some bugs reported by Albert Chin-A-Young in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00066.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00066.html>.
 
        * tests/input.at (Torturing the Scanner): Don't invoke "cc a.c b.c
        -o c"; the HP C compiler chatters during compilation.
 
        * tests/input.at (Torturing the Scanner): Don't invoke "cc a.c b.c
        -o c"; the HP C compiler chatters during compilation.
        (yyglrReduce): Return yyok, not 0.
        This should avoid the enumerated-type warnings reported
        by Nelson H. F. Beebe in
        (yyglrReduce): Return yyok, not 0.
        This should avoid the enumerated-type warnings reported
        by Nelson H. F. Beebe in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00057.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00057.html>.
 
        * lib/bbitset.h (BITSET_INLINE): Remove.
        * lib/bitset.h [! BITSET_INLINE]: Remove.
 
        * lib/bbitset.h (BITSET_INLINE): Remove.
        * lib/bitset.h [! BITSET_INLINE]: Remove.
        * data/glr.c (inline): Remove #define.  It's the user's
        responsibility to #define it away, just like 'const'.
        This fixes one of the bugs reported by Nelson H. F. Beebe in
        * data/glr.c (inline): Remove #define.  It's the user's
        responsibility to #define it away, just like 'const'.
        This fixes one of the bugs reported by Nelson H. F. Beebe in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00058.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00058.html>.
 
        * Makefile.maint (po-check): Scan .l and .y files instead of the
        .c and the .h files that they generate.  This fixes the bug
        reported by Tim Van Holder in:
 
        * Makefile.maint (po-check): Scan .l and .y files instead of the
        .c and the .h files that they generate.  This fixes the bug
        reported by Tim Van Holder in:
-       <http://mail.gnu.org/archive/html/bison-patches/2002-11/msg00062.html>
+       <http://lists.gnu.org/archive/html/bison-patches/2002-11/msg00062.html>
        Look for N_ as well as for _.  Try to avoid matching #define for
        N_ and _.
        * po/POTFILES.in: Remove src/parse-gram.c, src/scan-gram.c,
        Look for N_ as well as for _.  Try to avoid matching #define for
        N_ and _.
        * po/POTFILES.in: Remove src/parse-gram.c, src/scan-gram.c,
        Revamp to fix many (but not all) of the C- and M4-related quoting
        problems.  Among other things, this fixes the Bison bug reported
        by Jan Hubicka when processing the Bash grammar; see:
        Revamp to fix many (but not all) of the C- and M4-related quoting
        problems.  Among other things, this fixes the Bison bug reported
        by Jan Hubicka when processing the Bash grammar; see:
-       <http://mail.gnu.org/archive/html/bison-patches/2002-11/msg00039.html>
+       <http://lists.gnu.org/archive/html/bison-patches/2002-11/msg00039.html>
 
        Use new @ escapes consistently.  Represent brackets with @{ and @}
        rather than @<:@ and @:>@, since this works a bit better with dumb
 
        Use new @ escapes consistently.  Represent brackets with @{ and @}
        rather than @<:@ and @:>@, since this works a bit better with dumb
 2002-11-09  Paul Eggert  <eggert@twinsun.com>
 
        Fix the test failure due to GCC warnings described in
 2002-11-09  Paul Eggert  <eggert@twinsun.com>
 
        Fix the test failure due to GCC warnings described in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-11/msg00000.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-11/msg00000.html>.
        * data/glr.c (yyis_pact_ninf, yyis_table_ninf): New macros, which
        evaluate to 0 if it's impossible for NINF to be in the respective
        table.
        * data/glr.c (yyis_pact_ninf, yyis_table_ninf): New macros, which
        evaluate to 0 if it's impossible for NINF to be in the respective
        table.
        * data/glr.c (struct yyltype): Define members even when not
        doing locations.  This is more consistent with yacc.c, and it
        works around the following bug reports:
        * data/glr.c (struct yyltype): Define members even when not
        doing locations.  This is more consistent with yacc.c, and it
        works around the following bug reports:
-       http://mail.gnu.org/archive/html/bug-bison/2002-10/msg00106.html
-       http://mail.gnu.org/archive/html/bug-bison/2002-10/msg00111.html
+       http://lists.gnu.org/archive/html/bug-bison/2002-10/msg00106.html
+       http://lists.gnu.org/archive/html/bug-bison/2002-10/msg00111.html
 
        * doc/bison.texinfo: Minor spelling and typographical fixes.  Use
        @acronym consistently.  Standardize on "Yacc" instead of "YACC",
 
        * doc/bison.texinfo: Minor spelling and typographical fixes.  Use
        @acronym consistently.  Standardize on "Yacc" instead of "YACC",
 2002-10-13  Paul Eggert  <eggert@twinsun.com>
 
        Fix problem reported by Henrik Grubbstroem in
 2002-10-13  Paul Eggert  <eggert@twinsun.com>
 
        Fix problem reported by Henrik Grubbstroem in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-10/msg00098.html>:
+       <http://lists.gnu.org/archive/html/bug-bison/2002-10/msg00098.html>:
        "nonterm: { $$ = 123; } { $$ = $1; };" was wrongly rejected,
        because the Bison parser reads the second action before reducing
        the first one.
        "nonterm: { $$ = 123; } { $$ = $1; };" was wrongly rejected,
        because the Bison parser reads the second action before reducing
        the first one.
        Include <sys/time.h> when checking for clock_t and struct tms.
        Use same include order as source.
        This is for the SunOS 4.1.4 porting bug reported by Peter Klein in
        Include <sys/time.h> when checking for clock_t and struct tms.
        Use same include order as source.
        This is for the SunOS 4.1.4 porting bug reported by Peter Klein in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-10/msg00016.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-10/msg00016.html>.
 
        * lib/timevar.c: Update copyright date and clarify comments.
        (get_time) [IN_GCC]: Keep the GCC version for reference.
 
        * lib/timevar.c: Update copyright date and clarify comments.
        (get_time) [IN_GCC]: Keep the GCC version for reference.
        * src/reader.c (grammar_current_rule_check):
        Don't worry about the default action if $$ is untyped.
        Prevents bogus warnings reported by Jim Gifford in
        * src/reader.c (grammar_current_rule_check):
        Don't worry about the default action if $$ is untyped.
        Prevents bogus warnings reported by Jim Gifford in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-10/msg00015.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-10/msg00015.html>.
 
        * data/c.m4 (b4_token_enum): Do not define YYTOKENTYPE.
        * data/glr.c, data/lalr1.cc, data/yacc.c:
        Output token definitions before the first part of user declarations.
        Fixes compatibility problem reported by Jim Gifford for kbd in
 
        * data/c.m4 (b4_token_enum): Do not define YYTOKENTYPE.
        * data/glr.c, data/lalr1.cc, data/yacc.c:
        Output token definitions before the first part of user declarations.
        Fixes compatibility problem reported by Jim Gifford for kbd in
-       <http://mail.gnu.org/archive/html/bug-bison/2002-10/msg00014.html>.
+       <http://lists.gnu.org/archive/html/bug-bison/2002-10/msg00014.html>.
 
 2002-10-11  Paul Eggert  <eggert@twinsun.com>
 
 
 2002-10-11  Paul Eggert  <eggert@twinsun.com>
 
 
        * lib/bitset.h (bitset_reset): Do not assume that bitset_word is
        the same width as int.  This reapplies a hunk of the 2002-08-12 patch
 
        * lib/bitset.h (bitset_reset): Do not assume that bitset_word is
        the same width as int.  This reapplies a hunk of the 2002-08-12 patch
-       <http://mail.gnu.org/archive/html/bison-patches/2002-08/msg00007.html>,
+       <http://lists.gnu.org/archive/html/bison-patches/2002-08/msg00007.html>,
        which was inadvertently undone by the 2002-09-30 patch.
        * lib/lbitset.c (debug_lbitset): Do not assume that bitset_word is
        the same width as int.
        which was inadvertently undone by the 2002-09-30 patch.
        * lib/lbitset.c (debug_lbitset): Do not assume that bitset_word is
        the same width as int.
 -----
 
 Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
 -----
 
 Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
-1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 
 This file is part of Bison, the GNU Compiler Compiler.
 
 
 This file is part of Bison, the GNU Compiler Compiler.