Paul Eggert [Sun, 8 Aug 2004 04:57:06 +0000 (04:57 +0000)]
uniqstr wasn't being used for handle_syncline like it should.
Paul Eggert [Thu, 22 Jul 2004 14:42:11 +0000 (14:42 +0000)]
Fix bug with non-%union parsers that have printers or destructors,
which led to a Bison core dump.
Paul Eggert [Thu, 22 Jul 2004 14:40:21 +0000 (14:40 +0000)]
(_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.
Paul Eggert [Thu, 22 Jul 2004 14:39:58 +0000 (14:39 +0000)]
(symbol_destructors_output, symbol_printers_output):
Don't assume %union.
Paul Eggert [Thu, 22 Jul 2004 14:39:34 +0000 (14:39 +0000)]
(yystype) [defined YYSTYPE]: Define to YYSTYPE, not to our own type.
Paul Eggert [Thu, 22 Jul 2004 14:39:03 +0000 (14:39 +0000)]
(b4_symbol_actions): Don't assume %union was used.
Paul Eggert [Tue, 22 Jun 2004 06:50:29 +0000 (06:50 +0000)]
Reorganize GLR section a bit.
Paul Eggert [Mon, 21 Jun 2004 21:01:42 +0000 (21:01 +0000)]
One more "lookahead" -> "look-ahead" change.
Paul Eggert [Mon, 21 Jun 2004 20:55:20 +0000 (20:55 +0000)]
New section "Simple GLR Parsers".
Paul Eggert [Mon, 21 Jun 2004 20:51:32 +0000 (20:51 +0000)]
Regenerate.
Paul Eggert [Mon, 21 Jun 2004 20:20:31 +0000 (20:20 +0000)]
Use "look-ahead" instead of "lookahead", consistently.
Paul Eggert [Thu, 3 Jun 2004 22:38:23 +0000 (22:38 +0000)]
Update location of patched M4 distribution.
Paul Eggert [Thu, 3 Jun 2004 22:28:57 +0000 (22:28 +0000)]
Update location of patched M4 version.
Paul Eggert [Sun, 30 May 2004 18:58:00 +0000 (18:58 +0000)]
Don't assume the C++ compiler takes the same arguments as the C compiler.
Paul Eggert [Sun, 30 May 2004 00:56:57 +0000 (00:56 +0000)]
Fix some "make check" problems with Tru64 C++.
Paul Eggert [Sat, 29 May 2004 07:16:29 +0000 (07:16 +0000)]
Workaround for SGI C++ compiler.
Paul Eggert [Thu, 27 May 2004 20:51:16 +0000 (20:51 +0000)]
Increase prerequisite version numbers to match what the code really needs.
Paul Eggert [Thu, 27 May 2004 07:40:12 +0000 (07:40 +0000)]
Regenerate.
Paul Eggert [Thu, 27 May 2004 07:38:17 +0000 (07:38 +0000)]
* src/parse-gram.y (lloc_default): Rewrite to avoid compiler bug.
* configure.ac (AC_PREREQ): Bump to 2.58.
Paul Eggert [Wed, 26 May 2004 19:25:21 +0000 (19:25 +0000)]
* configure.ac (AM_GNU_GETTEXT_VERSION): Lower it from 0.14.1 to 0.11.5.
* bootstrap: Remove gettext version checking.
Paul Eggert [Wed, 26 May 2004 17:45:45 +0000 (17:45 +0000)]
Also mention that %union can depend on prerequisite types.
Paul Eggert [Wed, 26 May 2004 07:20:06 +0000 (07:20 +0000)]
* README: Mention GNU m4 1.4 bugs and Akim's patched version.
* README-alpha: Don't tell people not to package this.
Paul Eggert [Wed, 26 May 2004 06:46:02 +0000 (06:46 +0000)]
* bootstrap: Don't assume $(...) works; use `...` instead.
Paul Eggert [Tue, 25 May 2004 19:09:01 +0000 (19:09 +0000)]
* doc/bison.texinfo (Decl Summary, Bison Options): Clarify what's put into
the -d output file.
Paul Eggert [Tue, 25 May 2004 05:43:14 +0000 (05:43 +0000)]
Undo change made earlier today: it caused autopoint to not bring
in ABOUT-NLS. Ouch. Instead, substitute our own diagnostic for
autopoint's.
Paul Eggert [Mon, 24 May 2004 20:08:54 +0000 (20:08 +0000)]
The gettext version checking is causing more trouble than it's curing;
remove it.
Paul Eggert [Mon, 24 May 2004 06:58:02 +0000 (06:58 +0000)]
Ensure that the C++ compiler used for testing actually works on a
simple test program; if not, skip the C++-related tests.
Paul Eggert [Fri, 21 May 2004 22:23:04 +0000 (22:23 +0000)]
Output yylloc macro defn in glr.c even if locations are not being generated.
Paul Eggert [Fri, 21 May 2004 22:12:21 +0000 (22:12 +0000)]
* configure.ac (AC_INIT): Update to 1.875e.
Paul Eggert [Fri, 21 May 2004 21:03:41 +0000 (21:03 +0000)]
Version 1.875d.
Paul Eggert [Fri, 7 May 2004 07:35:10 +0000 (07:35 +0000)]
Use size_t (not unsigned int) for hashes, since the gnulib hash module
now uses size_t.
Paul Eggert [Mon, 3 May 2004 23:10:25 +0000 (23:10 +0000)]
Don't DEFUN AM_INTL_SUBDIR twice.
Paul Eggert [Mon, 3 May 2004 07:58:53 +0000 (07:58 +0000)]
Regenerate.
Paul Eggert [Mon, 3 May 2004 07:57:06 +0000 (07:57 +0000)]
* src/parse-gram.y: Put copyright notice inside %{ %} so it
gets copied to the output file.
Paul Eggert [Mon, 3 May 2004 07:42:52 +0000 (07:42 +0000)]
Reject unescaped newlines in strings.
Paul Eggert [Mon, 3 May 2004 07:36:12 +0000 (07:36 +0000)]
Remove more 'intl'-related files while bootstrapping.
Paul Eggert [Wed, 28 Apr 2004 20:00:56 +0000 (20:00 +0000)]
Get files from the gnulib and po repositories, instead of relying
on them being in our CVS. Upgrade to latest versions of gnulib and Automake.
Paul Eggert [Wed, 28 Apr 2004 19:52:27 +0000 (19:52 +0000)]
(GZIP_ENV): Don't use --rsyncable if gzip doesn't
support it. (The latest stable gzip doesn't.)
Paul Eggert [Wed, 28 Apr 2004 06:52:51 +0000 (06:52 +0000)]
Remove more K&R C support.
Paul Eggert [Wed, 28 Apr 2004 06:30:05 +0000 (06:30 +0000)]
Rewrite so that subpipe.h can stand alone. Assume C89 or better.
Paul Eggert [Wed, 28 Apr 2004 06:22:58 +0000 (06:22 +0000)]
Remove PARAMS.
Paul Eggert [Wed, 28 Apr 2004 06:15:34 +0000 (06:15 +0000)]
Remove PARAMS and upgrade to latest obstack.h.
Paul Eggert [Wed, 28 Apr 2004 06:06:31 +0000 (06:06 +0000)]
(_AT_CHECK_PRINTER_AND_DESTRUCTOR): Don't
declare yyerror when using lalr.cc, as GCC 3.4.0 warns about the
unused declaration.
Paul Eggert [Wed, 28 Apr 2004 06:03:54 +0000 (06:03 +0000)]
(%union synch line): Put a dummy member in
the union, because empty unions aren't allowed in C.
Caught by GCC 3.4.0.
Paul Eggert [Wed, 28 Apr 2004 05:48:39 +0000 (05:48 +0000)]
(Parser::stos_) [! YYDEBUG]: Define even in this
case, as stos_ is now used by destructors due to the 2004-02-09
change.
Paul Eggert [Tue, 13 Apr 2004 17:43:15 +0000 (17:43 +0000)]
Update copyright to 2004.
Paul Eggert [Tue, 13 Apr 2004 17:42:59 +0000 (17:42 +0000)]
* src/conflicts.c (conflicts_print): Correct format string typo:
use `%%' to produce literal `%'. (trivial change)
Paul Eggert [Wed, 31 Mar 2004 00:41:30 +0000 (00:41 +0000)]
Regenerate.
Paul Eggert [Wed, 31 Mar 2004 00:37:21 +0000 (00:37 +0000)]
Use 'short int' rather than 'short', and similarly for 'long', 'unsigned', etc.
Paul Eggert [Tue, 30 Mar 2004 08:11:20 +0000 (08:11 +0000)]
(version): Update copyright year to 2004.
Paul Hilfinger [Fri, 26 Mar 2004 22:41:16 +0000 (22:41 +0000)]
* 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.
Paul Eggert [Mon, 8 Mar 2004 20:49:34 +0000 (20:49 +0000)]
Add support for hex token numbers.
Paul Eggert [Wed, 25 Feb 2004 21:13:00 +0000 (21:13 +0000)]
(AT_COMPILE, AT_COMPILE_CXX): Ignore stdout from compilers.
Paul Eggert [Wed, 25 Feb 2004 20:23:33 +0000 (20:23 +0000)]
Add a marker for when 1.875c was published.
Alexandre Duret-Lutz [Mon, 9 Feb 2004 21:31:42 +0000 (21:31 +0000)]
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.
Paul Eggert [Mon, 2 Feb 2004 22:52:54 +0000 (22:52 +0000)]
Regenerate.
Paul Eggert [Mon, 2 Feb 2004 22:36:49 +0000 (22:36 +0000)]
Replace INCLUDES with AM_CPPFLAGS, fixing a bug in src/Makefile.am
reported by Paul Hilfinger.
Paul Eggert [Mon, 2 Feb 2004 22:35:53 +0000 (22:35 +0000)]
(yytokenName): Bullet-proof against YYEMPTY token.
(yyreportSyntaxError): Handle case where lookahead token is
YYEMPTY.
Paul Hilfinger [Wed, 14 Jan 2004 01:40:12 +0000 (01:40 +0000)]
data/glr.c: Put casts on uses of YYREALLOC and YYMALLOC so that
resulting parsers are compilable with C++.
Paul Eggert [Wed, 24 Dec 2003 08:33:39 +0000 (08:33 +0000)]
Log today's changes.
Paul Eggert [Wed, 24 Dec 2003 08:32:43 +0000 (08:32 +0000)]
Add Makevars.template, stamp-po.
Remove stamp-cat-id.
Paul Eggert [Wed, 24 Dec 2003 08:30:45 +0000 (08:30 +0000)]
($(TESTSUITE)): Remove warning about ignoring
multiple inclusion warnings.
Paul Eggert [Wed, 24 Dec 2003 08:26:02 +0000 (08:26 +0000)]
Require Autoconf 2.59, and don't include local.at twice since
Autoconf 2.59 yells about it for some reason.
Paul Eggert [Wed, 24 Dec 2003 08:17:05 +0000 (08:17 +0000)]
(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.
Paul Eggert [Wed, 24 Dec 2003 07:55:25 +0000 (07:55 +0000)]
(output_skeleton): Rename local var.
Paul Eggert [Wed, 24 Dec 2003 07:52:17 +0000 (07:52 +0000)]
Sync with Automake 1.8.
Akim Demaille [Tue, 2 Dec 2003 17:08:31 +0000 (17:08 +0000)]
* doc/bison.texinfo (How Can I Reset the Parser): More about start
conditions.
From Bruno Haible.
Alexandre Duret-Lutz [Tue, 18 Nov 2003 19:14:05 +0000 (19:14 +0000)]
* doc/bison.texinfo (Bison Options): Escape `@' in `$@'.
Paul Eggert [Tue, 21 Oct 2003 17:42:48 +0000 (17:42 +0000)]
a -> an (minor typo fix)
Paul Eggert [Tue, 7 Oct 2003 23:34:20 +0000 (23:34 +0000)]
Don't run 'testsuite --clean' if testsuite doesn't exist.
Paul Eggert [Tue, 7 Oct 2003 07:32:57 +0000 (07:32 +0000)]
Do not allow NUL bytes in string literals or character constants.
Paul Eggert [Sun, 5 Oct 2003 07:34:36 +0000 (07:34 +0000)]
Don't document %no-default-prec for now.
Paul Eggert [Sun, 5 Oct 2003 06:46:53 +0000 (06:46 +0000)]
In GLR grammars, $N and @N now yield non-modifiable lvalues.
Paul Eggert [Wed, 1 Oct 2003 22:00:13 +0000 (22:00 +0000)]
Regenerate.
Paul Eggert [Wed, 1 Oct 2003 21:33:24 +0000 (21:33 +0000)]
Use "%no-default-prec" instead of "%default-prec 0".
Akim Demaille [Wed, 1 Oct 2003 07:46:41 +0000 (07:46 +0000)]
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.
Akim Demaille [Wed, 1 Oct 2003 07:46:02 +0000 (07:46 +0000)]
Update.
Paul Eggert [Tue, 30 Sep 2003 20:20:25 +0000 (20:20 +0000)]
Describe %default-prec.
Paul Eggert [Tue, 30 Sep 2003 20:11:29 +0000 (20:11 +0000)]
Add %default-prec.
Paul Eggert [Tue, 30 Sep 2003 16:45:13 +0000 (16:45 +0000)]
Include local.at, not input.at, fixing a typo in the 2003-08-25 patch.
Akim Demaille [Wed, 27 Aug 2003 07:00:10 +0000 (07:00 +0000)]
* data/lalr1.cc (yyparse) [__GNUC__]: "Use" yyerrorlab to pacify
GCC warnings.
Akim Demaille [Tue, 26 Aug 2003 07:13:52 +0000 (07:13 +0000)]
* config/announce-gen (print_changelog_deltas): Neutralize "<#" as
"<#" to avoid magic from Gnus when posting parts of this script.
Akim Demaille [Tue, 26 Aug 2003 05:21:41 +0000 (05:21 +0000)]
* 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.
Akim Demaille [Mon, 25 Aug 2003 18:47:36 +0000 (18:47 +0000)]
* 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.
Akim Demaille [Mon, 25 Aug 2003 15:16:25 +0000 (15:16 +0000)]
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.
Akim Demaille [Mon, 25 Aug 2003 15:15:32 +0000 (15:15 +0000)]
Update.
Akim Demaille [Mon, 25 Aug 2003 10:35:38 +0000 (10:35 +0000)]
* doc/bison.texinfo: Don't promote stdout for error messages.
Akim Demaille [Mon, 25 Aug 2003 09:54:57 +0000 (09:54 +0000)]
* data/lalr1.cc (Parser::reduce_print_): Remove unused yyi.
From Alexandre Duret-Lutz.
Akim Demaille [Mon, 25 Aug 2003 08:39:34 +0000 (08:39 +0000)]
* data/lalr1.cc (Parser::stack_print_, YY_STACK_PRINT): New.
Use them.
Akim Demaille [Mon, 25 Aug 2003 08:29:27 +0000 (08:29 +0000)]
* data/lalr1.cc (Parser::reduce_print_): New.
Use it.
Akim Demaille [Mon, 25 Aug 2003 08:06:17 +0000 (08:06 +0000)]
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.
Akim Demaille [Mon, 25 Aug 2003 07:15:49 +0000 (07:15 +0000)]
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.
Akim Demaille [Mon, 25 Aug 2003 07:15:07 +0000 (07:15 +0000)]
Update.
Paul Eggert [Mon, 4 Aug 2003 19:09:58 +0000 (19:09 +0000)]
Rework glr.c slightly to avoid gcc -Wtraditional warnings.
Paul Eggert [Mon, 4 Aug 2003 19:09:15 +0000 (19:09 +0000)]
(yyuserMerge): Return void, not YYSTYPE.
The returned value is now stored in *YY0. All callers changed.
Paul Eggert [Mon, 4 Aug 2003 19:08:38 +0000 (19:08 +0000)]
(merge_output): Adjust to the change to ../data/glr.c.
Paul Eggert [Sat, 26 Jul 2003 14:14:15 +0000 (14:14 +0000)]
* data/glr.c (YYASSERT): New macro.
Paul Eggert [Sat, 26 Jul 2003 14:12:28 +0000 (14:12 +0000)]
(YYASSERT): New macro.
(yyfillin, yydoAction, yyglrReduce, yysplitStack,
yyresolveStates, yyprocessOneStack):
Use `YYASSERT (FOO);' rather than `if (! (FOO)) abort ();'.
Paul Eggert [Fri, 25 Jul 2003 07:42:57 +0000 (07:42 +0000)]
* data/glr.c (yyglrReduce): Don't use C89 string concatenation.
Paul Eggert [Fri, 25 Jul 2003 07:42:25 +0000 (07:42 +0000)]
(yyglrReduce): Don't use C89 string concatenation.