+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
* 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).
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.
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.
* 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>
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.
* 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
- <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/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>
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,
(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,
* 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
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.
* 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
- <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-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.
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
- <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>
* 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.
(<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.
<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
* 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>
* 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.
* 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
- <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.
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/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>
* 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>,
* 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.
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.
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".
* 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
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>
* 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>
* 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.
* 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>
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
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.
(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.
* 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:
- <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,
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
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 (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",
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.
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.
* 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
- <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>
* 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.
-----
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.