]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
Remove PARAMS.
[bison.git] / ChangeLog
index e5d3f62a591110da2eccdb675654ae689b7cf808..4b472fccdfe6ad44c0a62968da6e5cd4547ff3c5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,332 @@
+2004-04-13  Jim Meyering  <jim@meyering.net>
+
+       * src/conflicts.c (conflicts_print): Correct format string typo:
+       use `%%' to produce literal `%'.  (trivial change)
+
+2004-03-30  Paul Eggert  <eggert@twinsun.com>
+
+       * src/getargs.c (version): Update copyright year to 2004.
+
+       * data/c.m4 (b4_int_type): Use 'short int' rather than
+       'short', and similarly for 'long', 'unsigned', etc.
+       * data/glr.c (YYTRANSLATE, yyconfl, yySymbol, yyItemNum,
+       yygetLRActions, yyprocessOneStack, yyrecoverSyntaxError,
+       yy_yypstack, yydumpstack): Likewise.
+       * data/lalr1.cc (user_token_number_max_, user_token_number_max_,
+       translate_, seq_, [], pop, Slice, range_, operator+, operator+=):
+       Likewise.
+       * data/yacc.c (b4_int_type, yyss, YYSTACK_BYTES, yysigned_char,
+       yy_stack_print, yyparse): Likewise.
+       * doc/bison.texinfo (Prologue, Multiple Types): Likewise.
+       * lib/bbitset.h (bitset_word, BITSET_WORD_BITS): Likewise.
+       * lib/bitset.c (bitset_print): Likewise.
+       * lib/bitset_stats.c (bitste_log_histogram_print): Likewise.
+       * lib/bitsetv-print.c (bitsetv_matrix_dump): Likewise.
+       * lib/bitsetv.c (bitsetv_dump): Likewise.
+       * lib/ebitset.c (EBITSET_ELT_BITS, ebitset_elt_alloc): Likewise.
+       * lib/lbitset.c (LBITSET_ELT_BITS, lbitset_elt_alloc, debug_lbitset):
+       Likewise.
+       * src/LR0.c (allocate_itemsets): Likewise.
+       * src/gram.h (rule_number, rule): Likewise.
+       * src/lalr.h (goto_number): Likewise.
+       * src/nullable.c (nullable_compute): Likewise.
+       * src/output.c (prepare_rules): Likewise.
+       * src/relation.c (relation_print, relation_digraph): Likewise.
+       * src/relation.h (relation_node): Likewise.
+       * src/state.h (state_number, transitions, errs, reductions,
+       struct state): Likewise.
+       * src/symtab.h (symbol_number, struct symbol): Likewise.
+       * src/tables.c (vector_number, tally, action_number,
+       default_goto, goto_actions): Likewise.
+       * tests/existing.at (GNU Cim Grammar): Likewise.
+       * tests/regression.at (Web2c Actions): Likewise.
+
+       * src/output.c (muscle_insert_short_int_table): Renamed from
+       muscle_insert_short_table.  All uses changed.
+
+2004-03-25  Paul Hilfinger  <hilfingr@tully.CS.Berkeley.EDU>
+
+       * src/parse-gram.y: Define PERCENT_EXPECT_RR.
+       (declaration): Replace expected_conflicts with expected_sr_conflicts.
+       Add %expect-rr rule.
+
+       * src/scan-gram.l: Recognize %expect-rr.
+
+       * src/conflicts.h (expected_sr_conflicts): Rename from
+       expected_conflicts.
+       (expected_rr_conflicts): Declare.
+
+       * src/conflicts.c (expected_sr_conflicts): Rename from
+       expected_conflicts.
+       (expected_rr_conflicts): Define.
+       (conflicts_print): Check r/r conflicts against expected_rr_conflicts
+       for GLR parsers.
+       Use expected_sr_conflicts in place of expected_conflicts.
+       Warn if expected_rr_conflicts used in non-GLR parser.
+
+       * doc/bison.texinfo: Add documentation for %expect-rr.
+
+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>.
+
+       * NEWS: Document hexadecimal tokens, no NUL bytes, %destructor
+       in lalr1.cc.
+       * doc/bison.texinfo (Token Decl): Add hexadecimal token numbers.
+       * src/scan-gram.l (scan_integer): New function.
+       ({int}): Use it.
+       (0[xX][0-9abcdefABCDEF]+): New pattern, to support hex numbers.
+       (<SC_ESCAPED_STRING,SC_ESCAPED_CHARACTER>, \\x[0-9abcdefABCDEF]+,
+       handle_action_dollar, handle_action_at, convert_ucn_to_byte):
+       Say "long int", not "long", for uniformity with GNU style.
+
+2004-02-25  Paul Eggert  <eggert@twinsun.com>
+
+       * 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>.
+
+2004-02-09  Alexandre Duret-Lutz  <adl@gnu.org>
+
+       Support %destructor and merge error locations in lalr1.cc.
+
+       * data/lalr1.cc (b4_cxx_destruct_def): New macro.
+       (Parser::stos_): Define unconditionally.
+       (Parser::destruct_): New method.  Generate its body with
+       b4_yydestruct_generate.
+       (Parser::error_start_): New attribute.
+       (Parser::parse) <yyerrlab, yyerrlab1>: Call destruct_ on erroneous
+       token which are discarded.
+       (Parser::parse) <yyerrlab, yyerrorlab, yyerrlab1>: Update
+       error_start_ when erroneous token are discarded.
+       (Parser::parse) <yyerrlab1>: Compute the location of the error
+       token so that it covers all the discarded tokens.
+       * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Adjust so
+       it can be called with `%skeleton "lalr1.cc"', and do that.
+
+2004-02-02  Paul Eggert  <eggert@twinsun.com>
+
+       * src/Makefile.am (AM_CPPFLAGS): New macro.  It mentions
+       $(top_srcdir)/lib and ../lib.  This fixes a bug reported
+       by Paul Hilfinger; the old INCLUDES value didn't mention ../lib.
+       There's no need to mention top_builddir since Automake does that
+       for us.
+       (INCLUDES): Remove, as Automake says it's obsolescent.
+       Contents migrated into AM_CPPFLAGS as described above.
+       * lib/Makefile.am (INCLUDES): Remove; obsolescent.
+
+2004-01-14  Paul Hilfinger  <hilfingr@CS.Berkeley.EDU>
+
+       * data/glr.c (yytokenName): Bullet-proof against YYEMPTY token.
+       (yyreportSyntaxError): Handle case where lookahead token is
+       YYEMPTY.
+
+2004-01-13  Paul Hilfinger  <Hilfinger@CS.Berkeley.EDU>
+
+       * data/glr.c: Put casts on uses of YYREALLOC and YYMALLOC so that
+       resulting parsers are compilable with C++.
+
+2003-12-23  Paul Eggert  <eggert@twinsun.com>
+
+       * config/depcomp, config/install-sh: Sync with Automake 1.8.
+       * src/output.c (output_skeleton): Rename local var.
+       * tests/input.at (Torturing the Scanner): Don't use \x0 or \0 in
+       Bison tokens, as this runs afoul of the 2003-10-07 change that
+       disallowed NUL bytes in character constants or string literals.
+
+       * tests/local.at: Require Autoconf 2.59's Autotest.
+       * tests/testsuite.at: Don't include local.at, since we now assume
+       Autoconf 2.59 or later.  Autoconf 2.59 had some problems with
+       including it.
+       * tests/Makefile.am ($(TESTSUITE)): Remove warning about ignoring
+       multiple inclusion warnings.
+
+2003-12-02  Akim Demaille  <akim@epita.fr>
+
+       * doc/bison.texinfo (How Can I Reset the Parser): More about start
+       conditions.
+       From Bruno Haible.
+
+2003-11-18  Alexandre Duret-Lutz  <adl@gnu.org>
+
+       * doc/bison.texinfo (Bison Options): Escape `@' in `$@'.
+
+2003-10-07  Paul Eggert  <eggert@twinsun.com>
+
+       * tests/Makefile.am (clean-local): Don't run 'testsuite --clean'
+       if testsuite doesn't exist.
+
+       * doc/bison.texinfo (Symbols): NUL bytes are not allowed in string
+       literals, unfortunately.
+       * src/scan-gram.l (<SC_ESCAPED_STRING,SC_ESCAPED_CHARACTER>):
+       Complain about NUL bytes in character constants or string literals.
+
+2003-10-05  Paul Eggert  <eggert@twinsun.com>
+
+       * NEWS: Don't document %no-default-prec, as it's still
+       too experimental.
+       * doc/bison.texinfo: Document %no-default-prec only if
+       the defaultprec flag is set.  Normally it's not.
+
+2003-10-04  Paul Eggert  <eggert@twinsun.com>
+
+       * data/glr.c (b4_rhs_value, b4_rhs_location): Yield a
+       non-modifiable lvalue, instead of a modifiable one.
+       * doc/bison.texinfo (Actions): Document that $$ can
+       be assigned to.  Do not claim that $$ and $N are
+       array element references: user code should not rely on this.
+
+2003-10-01  Paul Eggert  <eggert@twinsun.com>
+
+       * src/parse-gram.h (PERCENT_NO_DEFAULT_PREC): New token.
+       (grammar_declaration): Use it.
+       * src/scan-gram.l: New token %no-default-prec.
+       * tests/conflicts.at: Revamp tests to use %no-default-prec.
+       * NEWS, doc/bison.texinfo: Document the above.
+
+2003-10-01  Akim Demaille  <akim@epita.fr>
+
+       VCG no longer supports long_straight_phase.
+
+       * src/vcg.c, src/vcg.h: Remove the handling of long_straight_phase.
+       * src/print_graph.c (print_graph): Adjust.
+
+2003-09-30  Frank Heckenbach  <frank@g-n-u.de>
+       and Paul Eggert  <eggert@twinsun.com>
+
+       * doc/bison.texinfo (Decl Summary, Contextual Precedence,
+       Table of Symbols): Document %default-prec.
+       * src/parse-gram.y (PERCENT_DEFAULT_PREC): New token.
+       (grammar_declaration): Set default_prec on %default-prec.
+       * src/scan-gram.l (%default-prec): New token.
+       * src/reader.h (default_prec): New flag.
+       * src/reader.c: Likewise.
+       (packgram): Handle it.
+       * tests/conflicts.at (%default-prec without %prec,
+       %default-prec with %prec, %default-prec 1): New tests.
+
+2003-09-30  Paul Eggert  <eggert@twinsun.com>
+
+       * tests/testsuite.at: Include local.at, not input.at, fixing
+       a typo in the 2003-08-25 patch.
+
+2003-08-27  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (yyparse) [__GNUC__]: "Use" yyerrorlab to pacify
+       GCC warnings.
+
+2003-08-26  Akim Demaille  <akim@epita.fr>
+
+       * config/announce-gen (print_changelog_deltas): Neutralize "<#" as
+       "<\#" to avoid magic from Gnus when posting parts of this script.
+
+2003-08-26  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (Parser::report_syntax_error_): New, extracted from
+       (Parser::parse): here.
+       Adjust: nerrs and errstatus is now replaced by...
+       (Parser::nerrs_, Parser::errstatus_): New.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       * config/announce-gen, Makefile.cfg: New.
+       * Makefile.am: Adjust.
+       * GNUmakefile, Makefile.maint: Update from CVS Autoconf, but
+       keeping local WGET and WGETFLAGS modifications from Paul Eggert.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       When reducing initial empty rules, Bison parser read an initial
+       location that is not defined.  This results in garbage, and that
+       affects Bison's own parser.  Therefore we need (i) to extend Bison
+       to support a means to initialize this location, and (ii) to use
+       this CVS Bison to fix CVS Bison's parser.
+
+       * src/reader.h, reader.c (epilogue_augment): Remove, replace
+       with...
+       * src/muscle_tab.h, src/muscle_tab.c (muscle_code_grow): this.
+       * src/parse-gram.y: Adjust.
+       (%initial-action): New.
+       (%error-verbose): Since we require CVS Bison, there is no reason
+       not to use it.
+       * src/scan-gram.l: Adjust.
+       * src/Makefile.am (YACC): New, to make sure we use our own parser.
+       * data/yacc.c (yyparse): Use b4_initial_action.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       * doc/bison.texinfo: Don't promote stdout for error messages.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (Parser::reduce_print_): Remove unused yyi.
+       From Alexandre Duret-Lutz.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       Version 1.875c.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (Parser::stack_print_, YY_STACK_PRINT): New.
+       Use them.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (Parser::reduce_print_): New.
+       Use it.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       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>.
+       Also, augment the similarity between lalr1.cc and yacc.c.
+       Note: the locations of error recovery rules are not correct yet.
+
+       * data/lalr1.cc: Comment changes to augment the similarity between
+       lalr1.cc and yacc.c.
+       (YYERROR): Goto to yyerrorlab, not yyerrlab1.
+       (yyerrlab1): Remove, but where it used to be (now the bottom part of
+       yyerrlab), when hitting EOF, pop the whole stack here instead of
+       merely falling thru the default error handling mechanism.
+       (yyerrorlab): New label, with the old contents of YYERROR,
+       plus the following change: pop the stack of rhs corresponding
+       to the production that invoked YYERROR.  That is how Yacc
+       behaves (required by POSIX).
+       * tests/calc.at (AT_CHECK_CALC_LALR1_CC): No longer expected to
+       fail.
+
+2003-08-25  Akim Demaille  <akim@epita.fr>
+
+       Tune local.at so that people can "autom4te -l autotest calc.at -o
+       calc" for instance, to extract a sub test suite.
+
+       * tests/testsuite.at: Move the initialization, Autotest version
+       requirement, and AT_TESTED invocation into...
+       * tests/local.at: here.
+       * tests/testsuite.at: Include it for compatibility with Autoconf
+       2.57.
+       * tests/Makefile.am ($(TESTSUITE)): Report that the warning should
+       be ignore.
+
+2003-08-04  Paul Eggert  <eggert@twinsun.com>
+
+       Rework code slightly to avoid gcc -Wtraditional warnings.
+       * data/glr.c (yyuserMerge): Return void, not YYSTYPE.
+       The returned value is now stored in *YY0.  All callers changed.
+       * src/output.c (merge_output): Adjust to the above change.
+
+2003-07-26  Paul Eggert  <eggert@twinsun.com>
+
+       * data/glr.c (YYASSERT): New macro.
+       (yyfillin, yydoAction, yyglrReduce, yysplitStack,
+       yyresolveStates, yyprocessOneStack):
+       Use `YYASSERT (FOO);' rather than `if (! (FOO)) abort ();'.
+       Derived from a suggestion by Frank Heckenbach.
+
 2003-07-25  Paul Eggert  <eggert@twinsun.com>
 
        * data/glr.c (yyglrReduce): Don't use C89 string concatenation,
 -----
 
 Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
-1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
 
 This file is part of Bison, the GNU Compiler Compiler.