+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>
+
+ * data/lalr1.cc (Parser::yycdebug_): New, a pointer, to allow
+ changes.
+ (YYCDEBUG): Adjust.
+ Use it instead of cdebug_.
+ (Parser::debug_stream, Parser::set_debug_stream): New.
+ (Parser::symprint_): Define cdebug_ for temporary backward
+ compatibility.
+ * 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.
+ Problem reported by Frank Heckenbach.
+
+2004-10-25 Akim Demaille <akim@epita.fr>
+
+ * data/glr.c (YYRHSLOC): Move its definition next to its uses.
+ Introduce another definition to address simple location arrays.
+ (yyGLRStack): New member: yyerror_range.
+ (yyrecoverSyntaxError, yyparse): Update it.
+ (yyrecoverSyntaxError): Use it when shifting the error token to
+ have an accurate range, equivalent to the one computed by both
+ yacc.c and lalr1.cc.
+ * tests/cxx-type.at (_AT_TEST_GLR_CXXTYPES): Change its yylex so
+ that column numbers start at column 0, as per GNU Coding
+ Standards, the others tests, and the doc.
+ (_AT_RESOLVED_GLR_OUTPUT_WITH_LOC, _AT_AMBIG_GLR_OUTPUT_WITH_LOC):
+ Adjust to the above change (first column is 0).
+ And adjust the location of the "<error>", now covering the whole
+ line.
+
+2004-10-22 Akim Demaille <akim@epita.fr>
+ and Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove some arbitrary limits on goto numbers and relations.
+ * src/lalr.c (goto_map, ngotos, from_state, to_state): Omit
+ initial values, since they're never used.
+ (set_goto_map): ngotos is now unsigned, so test for overflow
+ by seeing whether it wraps around to zero.
+ * src/lalr.h (goto_number): Now size_t, not short int.
+ (GOTO_NUMBER_MAXIMUM): Remove.
+ * src/relation.c (relation_print, traverse, relation_transpose):
+ Check for END_NODE rather than looking at sign.
+ * src/relation.h (END_NODE): New macro.
+ (relation_node): Now size_t, not short int.
+
+2004-10-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ * doc/bison.texinfo (Language and Grammar): In example, "int" is a
+ keyword, not an identifier. Problem reported by Baron Schwartz in
+ <http://lists.gnu.org/archive/html/bug-bison/2004-10/msg00017.html>.
+
+2004-10-11 Akim Demaille <akim@epita.fr>
+
+ * src/symtab.c (symbol_check_alias_consistency): Also check
+ type names, destructors, and printers.
+ Reported by Alexandre Duret-Lutz.
+ Recode the handling of associativity and precedence in terms
+ of symbol_precedence_set.
+ Accept no redeclaration at all, not even equal to the previous
+ value.
+ (redeclaration): New.
+ Use it to factor redeclaration complaints.
+ (symbol_make_alias): Don't set the type of the alias, let
+ symbol_check_alias_consistency do it as for other features.
+ * src/symtab.h (symbol): Add new member prec_location, and
+ type_location.
+ * src/symtab.c (symbol_precedence_set, symbol_type_set): Set them.
+ * tests/input.at (Incompatible Aliases): New.
+
+2004-10-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ .cvsignore fixes to accommodate gnulib changes,
+ and the practice of naming build directories "_build".
+ * .cvsignore: Add "_*". Sort.
+ * lib/.cvsignore: Add getopt_.h, xalloc-die.c.
+ * m4/.cvsignore: Add "*_gl.m4".
+
+2004-10-06 Akim Demaille <akim@epita.fr>
+
+ * src/parse-gram.y (add_param): Fix the truncation of trailing
+ spaces.
+
+2004-10-05 Akim Demaille <akim@epita.fr>
+
+ In Bison 1.875's yacc.c, YYLLOC_DEFAULT was called regardless
+ whether the reducion was empty or not. This leaves room to
+ improve the use of YYLLOC_DEFAULT in such a case.
+ lalr1.cc is still experimental, so changing this is acceptable.
+ And finally, there are probably not many users who changed the
+ handling of locations in GLR, so changing is admissible too.
+
+ * data/glr.c, data/lalr1.cc, data/yacc.c (YYLLOC_DEFAULT): On an
+ empty reduction, set @$ to an empty location ending the previously
+ stacked symbol.
+ Adjust uses to make sure the code is triggered on empty
+ reductions.
+ * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Adjust the
+ expected output: empty reductions have empty locations.
+
+2004-09-29 Akim Demaille <akim@epita.fr>
+
+ * data/lalr1.cc: Move towards a more standard C++ coding style
+ for templates: Class < T > -> Class<T>.
+
+2004-09-29 Akim Demaille <akim@epita.fr>
+
+ * data/lalr1.cc: Reinstall the former ctor, for sake of
+ compatibility, but warn it will be removed.
+ Move towards a more standard C++ coding style (i.e., type *var ->
+ type* var).
+
+2004-09-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ * src/parse-gram.y (add_param): Rewrite to avoid strchr,
+ since it's less likely to work if NULs are involved in the future.
+
+2004-09-27 Akim Demaille <akim@epita.fr>
+
+ * data/yacc.c (YY_LOCATION_PRINT): Fix its default declaration.
+
+2004-09-27 Akim Demaille <akim@epita.fr>
+
+ * data/lalr1.cc (b4_parse_param_decl_1): New.
+ (b4_parse_param_decl): Use it to have different names between attribute
+ and argument names.
+ (b4_cc_constructor_call): Likewise.
+
+2004-09-24 Akim Demaille <akim@epita.fr>
+
+ * src/parse-gram.y (add_param): Strip the leading and trailing
+ blanks from a formal argument declaration.
+ (YY_LOCATION_PRINT): New.
+
+2004-09-24 Akim Demaille <akim@epita.fr>
+
+ * data/c.m4 (b4_yysymprint_generate): Move the YYINPUT invocation
+ after the location.
+
+2004-09-24 Akim Demaille <akim@epita.fr>
+
+ * doc/bison.texinfo (Table of Symbols): Sort.
+
+2004-09-21 Akim Demaille <akim@epita.fr>
+
+ * data/yacc.c, data/glr.c (b4_at_dollar, b4_dollar_dollar): Remove
+ the useless parentheses.
+ Suggested by Paul Eggert.
+
+2004-09-20 Akim Demaille <akim@epita.fr>
+
+ Let the initial-action act on the look-ahead, and use it for the
+ "initial push" (corresponding to an hypothetical beginning-of-file).
+ And let lalr1.cc honor %initial-action.
+
+ * doc/bison.texinfo (Initial Action Decl): Clarify, and add an
+ example.
+ * data/lalr1.cc (Parser::initlocation_): Remove, bad experiment.
+ (Parser::Parser): Remove the ctor that used to initialize it.
+ (Parser::parse): Like in the other skeletons, issue the "starting
+ parse" message before any action.
+ Honor %initial-action.
+ Initialize the stacks with the lookahead.
+ * data/yacc.c: Let $$ and @$ in %initial-action designate the
+ look-ahead.
+ Push them in the stacks.
+ * tests/actions.at, tests/calc.at: Adjust the C++ ctor invocations.
+
+2004-09-20 Akim Demaille <akim@epita.fr>
+
+ * doc/bison.texinfo (Initial Action Decl): New.
+
+2004-09-20 Akim Demaille <akim@epita.fr>
+
+ * data/yacc.c (YY_LOCATION_PRINT): Use YYLTYPE_IS_TRIVIAL as a
+ clearer criterion to define it.
+ (parse): Initialize the initial location when YYLTYPE_IS_TRIVIAL.
+ When reducing on an empty RHS, use the latest stacked location as
+ location.
+ yylloc is not always available.
+ * data/glr.c: Likewise.
+ Also, honor initial-actions.
+
+2004-09-20 Akim Demaille <akim@epita.fr>
+
+ * data/yacc.c (YY_LOCATION_PRINT): New.
+ Define when we know YYLTYPE's structure, i.e., when the default
+ YYLLOC_DEFAULT is used.
+ * data/c.m4 (b4_yysymprint_generate): Use it.
+ * data/lalr1.cc (YYLLOC_DEFAULT): Stop relying on the initial
+ value of the result.
+ (error_start_): Replace with...
+ (error_range_): this location array.
+ This allows to replace code relying on the implementation of
+ locations by portable code.
+ * data/yacc.c (yylerrsp): Replace with...
+ (yyerror_range): this.
+ Every time a token is popped, update yyerror_range[0], to have an
+ accurate location for the error token.
+ * data/glr.c (YY_LOCATION_PRINT): New.
+ (yyprocessOneStack): Fix an invocation of YY_SYMBOL_PRINT:
+ deference a pointer.
+ * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): No longer
+ report the location in %printers.
+
+ * src/scan-skel.l: Instead of abort, report error messages to ease
+ understanding skeleton scanning failures.
+
+2004-09-16 Akim Demaille <akim@epita.fr>
+
+ * data/lalr1.cc (Stack::Iterator, Stack::ConstIterator): Rename as...
+ (iterator, const_iterator): these, to be more in the C++ spirit.
+ Also, return reverse iterators so that when displaying the stack
+ we display its bottom first.
+ (Parser::stack_print_, Parser::reduce_print_): Match the messages
+ from yacc.c.
+ We should probably use vector here though.
+
+2004-09-16 Akim Demaille <akim@epita.fr>
+
+ Have more complete shift traces.
+
+ * data/yacc.c, data/lalr1.c, data/glr.c: Use YY_SYMBOL_PRINT
+ to report Shifts instead of ad hoc YYDPRINTF invocations,
+ including for the error token.
+ * data/lalr1.cc (symprint_): Output the location.
+ * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): In C++, don't
+ output the location within the %printer.
+ Activate GLR tests, at least to make sure they compile properly.
+ They still don't pass though.
+ * tests/calc.at: Adjust expect verbose output, since now "Entering
+ state..." is on a different line than the "Shifting" message.
+
+2004-09-08 Akim Demaille <akim@epita.fr>
+
+ * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Move the
+ Bison directive from the Bison file to the invocation of this
+ macro, so that these directives are passed to
+ AT_BISON_OPTION_PUSHDEFS to get correct help macros.
+ Use these helping macros (e.g., AT_LOC, AT_VAL and so forth).
+ Move the AT_SETUP/AT_CLEANUP outside, to report as test title
+ the extra Bison directives instead of the whole series.
+ Change the grammar so that there are recoverable errors, and
+ unrecoverable errors. Now we can have the parser give up before
+ consuming the whole input. As a result we now can observe that
+ the lookahead is freed when needed.
+ Change the parser source to parse argv[1] instead of a hard coded
+ string.
+ Simplify yylex, and give a value and location to EOF.
+ Simplify some invocations of AT_CHECK_PRINTER_AND_DESTRUCTOR that
+ passed directives already coded in the file.
+ Add some tests to check the location of "error".
+ For some tests, the C++ parser is correct, and not yacc.c.
+ For other tests, they provide different, but unsatisfying, values,
+ so keep the C++ value so that at least one parser is "correct"
+ according to the test suite.
+ (Actions after errors): Remove, this is subsumed by the
+ AT_CHECK_PRINTER_AND_DESTRUCTOR series.
+
+2004-09-06 Akim Demaille <akim@epita.fr>
+
+ * data/lalr1.cc: Adjust the indentation of the labels.
+ (Parser::pop): New.
+ Use it.
+
+2004-09-06 Akim Demaille <akim@epita.fr>
+
+ * data/yacc.cc, data/glr.cc (yydestruct): Accept an additional
+ argument, an informative message.
+ Call YY_SYMBOL_PRINT.
+ Adjust all callers: integrate the associated YY_SYMBOL_PRINT.
+ * data/lalr1.cc (destruct_): Likewise.
+ In addition, no longer depend on b4_yysymprint_generate and
+ b4_yydestruct_generate to generate these functions, do it "by
+ hand".
+
+2004-09-03 Akim Demaille <akim@epita.fr>
+
+ * data/glr.c, data/lalr1.cc, data/yacc.c: When YYABORT was
+ invoked, yydestruct the lookahead.
+ * tests/calc.at (Calculator $1): Update the expected lengths of
+ traces: there is an added line for the discarded lookahead.
+ * doc/bison.texinfo (Destructor Decl): Some rewording.
+ Define "discarded" symbols.
+
+2004-09-02 Akim Demaille <akim@epita.fr>
+
+ * data/lalr1.cc (translate_, destruct_): No reason to be static.
+
+2004-09-02 Akim Demaille <akim@epita.fr>
+
+ * data/glr.c, yacc.c (YYDSYMPRINT): Remove, not used.
+ (YYDSYMPRINTF): Rename as...
+ (YY_SYMBOL_PRINT): this.
+ * data/lalr1.cc (YY_SYMBOL_PRINT): New, modeled after the previous
+ two.
+ Use it instead of direct symprint_ calls.
+ (yybackup): Tweak the "Now at end of input" case to match yacc.c's
+ one.
+
+2004-09-02 Akim Demaille <akim@epita.fr>
+
+ * data/lalr1.cc (b4_yysymprint_generate): New.
+ (symprint_): New member function, defined when YYDEBUG.
+ Use it consistently instead of token/nterm debugging output by
+ hand.
+ * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Adjust
+ %printer calls to use cdebug_ when using lalr1.cc.
+
+2004-08-30 Florian Krohm <florian@edamail.fishkill.ibm.com>
+
+ * data/glr.c: Guard the declarations of yypstack and yypdumpstack
+ with #ifdef YYDEBUG.
+
+2004-08-26 Akim Demaille <akim@epita.fr>
+
+ * doc/bison.texinfo (Implementing Loops): Rename as...
+ (Implementing Gotos/Loops): this.
+
+2004-08-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ Adjust to latest gnulib.
+ * bootstrap (gnulib_modules): Add xalloc-die.
+ Set LC_ALL=C so that file names sort consistently.
+ Prefer the gnulib copies of gettext.m4, glibc21.m4,
+ inttypes_h.m4, lib-ld.m4, lib-prefix.m4, po.m4, stdint_h.m4,
+ uintmax_t.m4, ulonglong.m4.
+ (intl_files_to_remove): Add gettext.m4, lib-ld.m4, lib-prefix.m4,
+ po.m4 since we are now using _gl.m4 instead.
+
+2004-08-10 Florian Krohm <florian@edamail.fishkill.ibm.com>
+
+ * src/scan-action.l: Remove. Scanning of semantic actions is
+ handled in scan-gram.l.
+
+2004-08-07 Florian Krohm <florian@edamail.fishkill.ibm.com>
+
+ * src/scan-gram.l (handle_syncline): Use uniqstr_new not xstrdup.
+
+ * src/location.h (struct): The file member is a uniqstr.
+ (equal_boundaries): Use UNIQSTR_EQ for comparison.
+
+2004-07-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix bug with non-%union parsers that have printers or destructors,
+ which led to a Bison core dump. Reported by Peter Fales in
+ <http://lists.gnu.org/archive/html/bug-bison/2004-07/msg00014.html>.
+
+ * data/c.m4 (b4_symbol_actions): Don't assume %union was used.
+ * data/lalr1.cc (yystype) [defined YYSTYPE]: Define to YYSTYPE,
+ not to our own type.
+ * src/output.c (symbol_destructors_output, symbol_printers_output):
+ Don't assume %union.
+ * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR,
+ AT_CHECK_PRINTER_AND_DESTRUCTOR): New argument
+ UNION-FLAG. All callers changed.
+ (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Don't assume %union.
+ Use type char, not unsigned int, when declaring an array of char;
+ this lets us remove a cast.
+ (Printers and Destructors): Add non-%union test cases.
+
+2004-06-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ * doc/bison.texinfo: Minor editorial changes, mostly to the new
+ GLR writeups. E.g., avoid frenchspacing and the future tense,
+ change "lookahead" to "look-ahead", and change "wrt" to "with
+ respect to".
+
+2004-06-21 Paul Hilfinger <hilfingr@CS.Berkeley.EDU>
+
+ * doc/bison.texinfo (Merging GLR Parses, Compiler Requirements):
+ New sections, split off from the GLR Parsers section. Put the new
+ Simple GLR Parser near the start of the GLR section, for clarity.
+ Rewrite connective text.
+
+2004-06-21 Frank Heckenbach <frank@g-n-u.de>
+
+ * doc/bison.texinfo (Simple GLR Parsers): New section.
+
+2004-06-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ * NEWS, TODO, doc/bison.texinfo:
+ Use "look-ahead" instead of "lookahead", to be consistent.
+ * REFERENCES: Fix incorrect reference to DeRemer and Pennello,
+ while we're fixing "look-ahead".
+ * src/conflicts.c (shift_set): Renamed from shiftset.
+ (look_ahead_set): Renamed from lookaheadset.
+ * src/print.c: Likewise.
+ * src/getargs.c (report_args): Add "look-ahead" as the new canonical
+ name for "lookahead".
+ (report_types, usage): Likewise.
+ * src/getargs.h (report_look_ahead_tokens): Renamed from
+ report_lookaheads.
+ * src/lalr.c (compute_look_ahead_tokens): Renamed from
+ compute_lookaheads.
+ (state_look_ahead_tokens_count): Renamed from state_lookaheads_count.
+ (look_ahead_tokens_print): Renamed from lookaheads_print.
+ * src/state.c (state_rule_look_ahead_tokens_print): Renamed from
+ state_rule_lookaheads_print.
+ * src/state.h: Likewise.
+ (reductions.look_ahead_tokens): Renamed from lookaheads.
+ * tests/torture.at (AT_DATA_LOOK_AHEAD_TOKENS_GRAMMAR): Renamed from
+ AT_DATA_LOOKAHEADS_GRAMMAR.
+
+2004-06-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ * README: Update location of patched M4 distribution.
+
+2004-05-30 Albert Chin-A-Young <china@thewrittenword.com>
+
+ Don't assume the C++ compiler takes the same arguments as the C compiler
+ (trivial change).
+ * configure.ac (O0CXXFLAGS): New var.
+ * tests/atlocal.in (CXXFLAGS): Use it.
+
+2004-05-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix some "make check" problems with C++ reported by
+ Albert Chin-A-Young for Tru64 C++ in this thread:
+ http://lists.gnu.org/archive/html/bug-bison/2004-05/msg00049.html
+
+ * m4/cxx.m4 (BISON_TEST_FOR_WORKING_CXX_COMPILER): Check for std::cerr.
+ * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR):
+ Output to a .cc file for C++, not to a .c file.
+ * tests/calc.at (AT_CHECK_CALC): Likewise.
+ * tests/regression.at (AT_CHECK_DANCER): Likewise.
+ * tests/local.at (AT_COMPILE_CXX): Default to OUTPUT.cc, not OUTPUT.c.
+
+2004-05-28 Albert Chin-A-Young <china@thewrittenword.com>
+
+ * tests/calc.at, tests/actions.at: Workaround for SGI
+ C++ compiler. (trivial change)
+
+2004-05-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ Spent a few hours checking out which prerequisite versions the
+ current sources actually require. I went all the way back to
+ Gettext 0.10.40, Automake 1.4, and Autoconf 2.57 and investigated
+ a seemingly endless set of combinations of versions more recent
+ than that. The bottom line is that the current sources require
+ fairly recent versions of the build tools, and it'll be some work
+ to change this.
+ * configure.ac (AC_PREREQ): Increase from 2.58 to 2.59.
+ (AM_INIT_AUTOMAKE): Increase from 1.7 to 1.8.
+ (AM_GNU_GETTEXT_VERSION): Increase from 0.11.5 to 0.12.
+ Add comments explaining why those particular versions are
+ currently needed.
+
+ * 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://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).
+
+2004-05-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Lower it from 0.14.1 to
+ 0.11.5. Suggested by Bruno Haible.
+ * bootstrap: Remove gettext version checking.
+
+ * doc/bison.texinfo (Decl Summary): Also mention that %union
+ can depend on prerequisite types. Problem reported by Tim
+ Van Holder.
+
+2004-05-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ * README: Mention GNU m4 1.4 bugs and Akim's patched version.
+ * README-alpha: Don't tell people not to package this.
+
+ * bootstrap: Don't assume $(...) works; use `...` instead.
+ Problem reported by Paul Hilfinger. Also, diagnose non-GNU
+ gettext better.
+
+ * doc/bison.texinfo (Decl Summary, Bison Options): Clarify what's
+ put into the -d output file, and mention what to do if YYSTYPE is
+ defined as a macro.
+
+2004-05-24 Paul Eggert <eggert@cs.ucla.edu>
+
+ Undo change made earlier today: it caused autopoint to not bring
+ in ABOUT-NLS. Ouch. Instead, substitute our own diagnostic for
+ autopoint's.
+
+ * bootstrap: Check that gettext version matches what's in
+ configure.ac. Warn users to ignore robots.txt ERROR 404.
+ * bootstrap: Undo today's earlier change (logged below).
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Likewise.
+
+ The gettext version checking is causing more trouble than it's
+ curing; remove it. Problem reported by Paul Hilfinger.
+
+ * bootstrap: Issue a warning that one can expect a message
+ 'AM_GNU_GETTEXT is used, but not AM_GNU_GETTEXT_VERSION'.
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Remove.
+
+2004-05-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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://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.
+ * tests/atlocal.in (BISON_CXX_WORKS): Add.
+ * tests/local.at (AT_COMPILE_CXX): Use it.
+