Commit Graph
100 Commits
Author SHA1 Message Date
Paul Eggert 0051e3edb0 * data/glr.c (YYASSERT): New macro. 2003-07-26 14:14:15 +00:00
Paul Eggert 64c4fd521a (YYASSERT): New macro.
(yyfillin, yydoAction, yyglrReduce, yysplitStack,
yyresolveStates, yyprocessOneStack):
Use `YYASSERT (FOO);' rather than `if (! (FOO)) abort ();'.
2003-07-26 14:12:28 +00:00
Paul Eggert 5b620e069d * data/glr.c (yyglrReduce): Don't use C89 string concatenation. 2003-07-25 07:42:57 +00:00
Paul Eggert dfc8a22010 (yyglrReduce): Don't use C89 string concatenation. 2003-07-25 07:42:25 +00:00
Paul Eggert 137437c6db Let the user specify how to allocate and free memory. 2003-07-25 07:12:11 +00:00
Paul Eggert 2779e38386 (YYFREE, YYMALLOC): New macros.
All uses of free, malloc changed to use these macros.
2003-07-25 07:11:42 +00:00
Paul Eggert a525b5687d (YYFREE, YYMALLOC, YYREALLOC): New macros.
All uses of free, malloc, realloc changed to use these macros,
and unnecessary casts removed.
2003-07-25 07:10:14 +00:00
Paul Eggert b81a6e01dc (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>
(trivial change)
2003-07-07 03:46:28 +00:00
Paul Eggert ddb85ca59e use s.empty() rather than s == "" to test for empty string 2003-07-07 03:45:07 +00:00
Paul Eggert 4dcf140b13 Log 06-17 minor change to lib/libiberty.h that I forgot to log earlier; sorry! 2003-06-30 17:41:35 +00:00
Paul Eggert 29103e06b5 Omit the (1.875b) date from the 1.875c line. 2003-06-30 17:37:40 +00:00
Paul Eggert 0ae99356d5 * data/glr.c (YYLLOC_DEFAULT): Parenthesize arguments as needed,
and return properly parenthesized result.
* data/lalar1.cc (YYLLOC_DEFAULT): Likewise.
* data/yacc.c (YYLLOC_DEFAULT): Likewise.
Remove unnecessary parentheses from uses.
* doc/bison.texinfo (Location Default Action): Describe the
conventions for parentheses.
2003-06-20 22:52:12 +00:00
Paul Eggert 81fd08cad0 * data/glr.c (yyremoveDeletes, yy_reduce_print, yyglrReduce,
yyreportTree): Do not assume that size_t is the same width as int,
when printing sizes.  Print sizes using an unsigned format.
2003-06-19 08:45:55 +00:00
Paul Eggert 08fc98e544 (yyremoveDeletes, yy_reduce_print, yyglrReduce, 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>.
2003-06-19 08:45:16 +00:00
Paul Eggert cd05d13c9e Port to Forte Developer 7 C compiler. 2003-06-19 07:40:16 +00:00
Paul Eggert 5cc16ecc96 Port to Forte Developer 7 C compiler.
(struct YYLTYPE): If locations are not being used, declare a single
dummy member, as empty structs do not conform to the C standard.
(YYERROR, YYBACKUP): Do not use "do { ...; return foo; } while (0)";
the Forte Developer 7 C compiler complains that end-of-loop
code is not reached.
2003-06-19 07:38:39 +00:00
Paul Eggert 7b49187432 (AC_INIT): Bump version number to 1.875c. 2003-06-17 18:28:58 +00:00
Paul Eggert 226dcab028 Regenerate, to have proper Report-Msgid-Bugs-To: 2003-06-17 18:26:57 +00:00
Paul Eggert 8a2757b9e2 Include <stddef.h>, for size_t when libiberty.h doesn't define size_t. 2003-06-17 18:22:01 +00:00
Paul Eggert e6ce73154c (PARAMS): Spell argument as Args, not as X, to avoid warnings from
picky compilers about redefinition of PARAMS.
2003-06-17 08:51:57 +00:00
Paul Eggert 465b4444e8 Regenerate. 2003-06-17 08:34:53 +00:00
Paul Eggert f8e8262e70 Minor textual fixes. 2003-06-17 08:33:36 +00:00
Paul Eggert 7a5a3475cf (MSGID_BUGS_ADDRESS): New macro, for gettext 0.12.1. 2003-06-17 08:23:04 +00:00
Paul Eggert 7cc661648b Upgrade to gettext 0.12.1 version. 2003-06-17 08:19:02 +00:00
Paul Eggert acfafa9d91 (EXTRA_DIST): Add isc-posix.m4. 2003-06-17 08:17:48 +00:00
Paul Eggert 98bb5428c8 (vbitset_copy): Now static, to avoid a GCC warning. 2003-06-17 08:16:33 +00:00
Paul Eggert 8dd76bee16 1.875b changes 2003-06-17 07:54:28 +00:00
Paul Eggert 3473d0f899 Document 1.875b. 2003-06-17 07:52:27 +00:00
Paul Eggert ec622ab417 Add nls.m4, po.m4. 2003-06-17 07:49:33 +00:00
Paul Eggert 3647fcc8af Add stdbool.h. 2003-06-17 07:49:01 +00:00
Paul Eggert cbb0d2d116 (EXTRA_DIST): Add the following files, which
shouldn't be needed according to the gettext 0.12.1 documentation
but which seem to be needed anyway: codeset.m4 glibc21.m4
intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4
lcmessage.m4 nls.m4 po.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4.
2003-06-17 07:46:05 +00:00
Paul Eggert 88ab880d90 (vbitset_resize, vbitset_ones, vbitset_zero,
vbitset_empty_p, vbitset_copy1, vbitset_not, vbitset_equal_p,
vbitset_subset_p, vbitset_disjoint_p, vbitset_and, vbitset_and_cmp,
vbitset_andn, vbitset_andn_cmp, vbitset_or, vbitset_or_cmp,
vbitset_xor, vbitset_xor_cmp, vbitset_and_or, vbitset_and_or_cmp,
vbitset_andn_or, vbitset_andn_or_cmp, vbitset_or_and,
vbitset_or_and_cmp, vbitset_copy): Use prototypes, not old-style definitions.
2003-06-17 07:43:38 +00:00
Paul Eggert 6f2d9f5854 Do not include config.h; that's the includer's job.
Do not include <stdlib.h>.
(PARAMS): Define unconditionally for C89.
(ATTRIBUTE_NORETURN): Remove.
(ATTRIBUTE_UNUSED): Define unconditionally.
2003-06-17 07:25:48 +00:00
Paul Eggert 28ee846711 Upgrade to 2003-06-08 libbitset, then:
lbitset_unused_clear): Use prototypes, not old-style definitions.
2003-06-17 07:24:40 +00:00
Paul Eggert 75d0ea41fa Upgrade to 2003-06-08 libbitset, then:
(ebitset_resize, ebitset_unused_clear):
Use prototypes, not old-style definitions.
2003-06-17 07:23:46 +00:00
Paul Eggert 6a75a421f0 Upgrade to 2003-06-08 libbitset, except continue to include gettext.h
unconditionally, as per recent gettext manual's suggestion.
2003-06-17 07:22:58 +00:00
Paul Eggert fa8db4baa7 Upgrade to 2003-06-08 libbitset; then:
(bitset_compatible_p): Indent as per GNU standard.
Don't use 'index' in comments, as it's a builtin fn on some hosts.
2003-06-17 07:21:59 +00:00
Paul Eggert 3f764fe576 Upgrade to 2003-06-08 libbitset. 2003-06-17 07:21:03 +00:00
Paul Eggert 99c32453d0 Upgrade to 2003-06-08 libbitset; then:
Do not include config.h; that's the includer's job.
Do not include <sys/types.h>; shouldn't be needed on a C89 host.
2003-06-17 07:19:50 +00:00
Paul Eggert 94a23f969c (bitsets_sources): Add vbitset.c, vbitset.h. 2003-06-17 07:16:05 +00:00
Paul Eggert ac08ca6c30 Rename stdbool.h.in to stdbool_.h, to follow gnulib. 2003-06-17 06:55:55 +00:00
Paul Eggert e64fec0a0f (How Can I Reset the Parser): Renamed from `How Can I Reset
@code{yyparse}', since texinfo does not allow arbitrary @ in node
names.
2003-06-17 05:15:49 +00:00
Paul Eggert e2527c97f9 * configure.ac (AM_STDBOOL_H): Invoke this instead of AC_HEADER_STDBOOL.
(AM_GNU_GETTEXT): Put brackets around args, as latest manual suggests.
(AM_GNU_GETTEXT_VERSION): Update to 0.12.1.
2003-06-16 19:45:45 +00:00
Paul Eggert 1930ac784a (EXTRA_DIST): Add stdbool_.h.
(MOSTLYCLEANFILES): New var.
($(libbison_a_OBJECTS)): Depend on $(STDBOOL_H).
(stdbool.h): New rule.
2003-06-16 19:41:37 +00:00
Paul Eggert e9665d1605 Upgrade to today's gnulib. 2003-06-16 19:41:07 +00:00
Paul Eggert 671881d12d Minor white space issues, e.g. trailing white space at end of line. 2003-06-16 19:17:38 +00:00
Paul Eggert 907e3bc851 (AT_CHECK_CALC): New option EXPECTED-TO-FAIL.
(AT_CHECK_CALC_LALR1_CC): Use it, since the C++ LALR parser fails
the tests right now.
2003-06-16 18:42:49 +00:00
Paul Eggert b8a204c09b (_AT_TEST_GLR_CXXTYPES): Ensure yylex and
yyerror are declared before use; C99 requires this.
2003-06-16 18:37:55 +00:00
Paul Eggert 144c1e767a Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-07 23:28:20 +00:00
Paul Eggert 65d5286c12 Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-07 00:31:37 +00:00
Paul Eggert 1f5bf95b48 Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-06 22:03:15 +00:00
Paul Eggert 25e845d1be Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-05 10:40:45 +00:00
Paul Eggert 711f40b715 Avoid warnings generated by GCC 2.95.4 when Bison is
configured with --enable-gcc-warnings.
2003-06-04 05:58:52 +00:00
Paul Eggert 848dc439cb (_AT_DATA_DANCER_Y): Declare yylex to take
(void) as arg when not pure, since we now assume C89 when building
Bison.  Pacify GCC by using parameter.
2003-06-04 05:54:16 +00:00
Paul Eggert f56f6d78b0 (Improper handling of embedded actions and $-N in GLR parsers): Remove
unused local variable from yylex.
2003-06-04 05:53:44 +00:00
Paul Eggert 1d4055aa2b (yy::]b4_parser_class_name[::parse,
yy::]b4_parser_class_name[::translate_,
yy::Stack::operator[] (unsigned),
yy::Stack::operator[] (unsigned) const,
yy::Slice::operator[] (unsigned),
yy::Slice::operator[] (unsigned) const):
Rename local vars to avoid warnings.
2003-06-04 05:53:10 +00:00
Paul Eggert e77419464c Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-02 11:54:30 +00:00
Paul Eggert cea5324737 Initial revision 2003-06-02 11:54:30 +00:00
Paul Eggert eaef5507fc Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-02 10:19:37 +00:00
Paul Eggert ac695f7df5 * data/lalr1.cc (yy::Position::lines, yy::Position::columns,
yy::Location::lines, yy::Location::columns): Rename arguments
to avoid shadowing; this removes a warning generated by GCC 3.3.
2003-06-02 08:19:29 +00:00
Paul Eggert 2ffbee0e0b (yy::Position::lines, yy::Position::columns,
yy::Location::lines, yy::Location::columns): Rename arguments
to avoid shadowing; this removes a warning generated by GCC 3.3.
2003-06-02 08:19:08 +00:00
Paul Eggert 26ec81e097 Don't pass C-only options to g++.
Fix YYFILL in GLR parsers to conform to the C standard.
Fix infinite loops in yacc.c, and add a test case.
2003-06-02 07:29:18 +00:00
Paul Eggert 57f5199797 (AT_COMPILE_CXX): Use it instead of CFLAGS. 2003-06-02 07:26:17 +00:00
Paul Eggert 713535c232 (CXXFLAGS): New var. 2003-06-02 07:25:54 +00:00
Paul Eggert 504f20f77e (WARNING_CXXFLAGS): New subst. Set it to
everything that WARNING_CFLAGS has, except omit warnings
not suitable for C++.
(AC_PROG_CXX): Use this instead of AC_CHECK_PROGS([CXX], [g++]).
2003-06-02 07:25:30 +00:00
Paul Eggert 6a84279cb5 (yyfillin): Renamed from the old yyfill. Mark
as possibly unused.
(yyfill): New function.
(YYFILL): Use it.
(yyuserAction): Change type of yynormal to bool, so that it matches
the new yyfill signature.  Mark it as possibly unused.
2003-06-02 06:18:31 +00:00
Paul Eggert 82c53be476 (_AT_DATA_CALC_Y): Include unistd.h if available.
Define 'alarm' to do nothing if unistd.h is not available.
Add a new rule "exp: '-' error;" to test the above change to
data/yacc.c.  Use 'alarm' to abort any test taking longer than
10 seconds, as it's probably looping.
(AT_CHECK_CALC): Test recovery from error in new grammar rule.
Also, the new yacc.c generates two fewer diagnostics for an
existing test.
2003-06-02 03:58:34 +00:00
Paul Eggert a6b89bb2dc (YYERROR): Now just 'goto yyerrorlab', since the
macro's size was becoming unwieldy.
(yyerrlab): Do not discard an empty lookahead symbol, as this
might destroy garbage.
(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, and POSIX requires this behavior.
(yyerrlab1): Use YYPOPSTACK instead of its definiens.
2003-06-02 03:57:39 +00:00
Paul Eggert ed3265ddc5 Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-01 05:58:20 +00:00
Paul Eggert 6a0835a144 Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> 2003-06-01 03:37:15 +00:00
Paul Eggert ac89e8176f Initial revision 2003-06-01 03:37:15 +00:00
Paul Eggert c6ae27df0b * data/glr.c (YYSTACKEXPANDABLE): Do not evaluate
YYSTYPE_IS_TRIVIAL or YYSTYPE_IS_TRIVIAL unless they are defined.
This fixes a problem reported by John Bowman when the Compaq/HP
Alpha cxx compiler happy (e.g. using cxx -D__USE_STD_IOSTREAM
-ansi -Wall -gall).
* data/yacc.c (union yyalloc): Likewise.
(YYCOPY): Do not evaluate __GNUC__ unless it is defined.
2003-05-25 06:44:31 +00:00
Paul Eggert d7aa6ec179 (union yyalloc): Do not evaluate
YYSTYPE_IS_TRIVIAL or YYSTYPE_IS_TRIVIAL unless they are defined.
This fixes a problem reported by John Bowman when the Compaq/HP
Alpha cxx compiler happy (e.g. using cxx -D__USE_STD_IOSTREAM
-ansi -Wall -gall).
(YYCOPY): Do not evaluate __GNUC__ unless it is defined.
2003-05-25 06:44:08 +00:00
Paul Eggert f545262547 (YYSTACKEXPANDABLE): Do not evaluate
YYSTYPE_IS_TRIVIAL or YYSTYPE_IS_TRIVIAL unless they are defined.
This fixes a problem reported by John Bowman when the Compaq/HP
Alpha cxx compiler happy (e.g. using cxx -D__USE_STD_IOSTREAM
-ansi -Wall -gall).
2003-05-25 06:43:19 +00:00
Paul Eggert 83a457be99 Regenerate. 2003-05-24 19:26:35 +00:00
Paul Eggert d08290769c Switch from 'int' to 'bool' where that makes sense. 2003-05-24 19:16:02 +00:00
Paul Eggert 637fa3f83e Sync from automake 1.7.5. 2003-05-24 00:25:55 +00:00
Paul Eggert 829fd4c70d Semicolons are now allowed before "|". 2003-05-14 23:37:32 +00:00
Paul Eggert 6b2584b7a2 Require a semicolon after a grammar declaration, in the interest of
possible future changes to the Bison input language.
Do not allow a stray semicolon at the start of the grammar.
Allow one or more semicolons after any rule, including
just before "|" as required by POSIX.
2003-05-14 19:30:22 +00:00
Paul Eggert eae34f44e6 Regenerate. 2003-05-14 19:28:04 +00:00
Paul Eggert 087b9fdf03 (Torturing the Scanner): Add tests for ";|" in a grammar. 2003-05-14 19:26:52 +00:00
Paul Eggert 8d0a98bb50 (rules_or_grammar_declaration): Require a
semicolon after a grammar declaration, in the interest of possible
future changes to the Bison input language.
Do not allow a stray semicolon at the start of the grammar.
(rhses.1): Allow one or more semicolons after any rule, including
just before "|" as required by POSIX.
2003-05-14 19:26:16 +00:00
Paul Eggert 3ab370773d * doc/bison.texinfo (How Can I Reset @code{yyparse}):
Minor English and technical fixups.
2003-05-12 19:35:13 +00:00
Paul Eggert 0e14ad772f (How Can I Reset @code{yyparse}): Reword the
English a bit.  Fix fclose typo.  Change "const char" to "char
const", and use ANSI C rather than K&R for "main".  Suggest
YY_FLUSH_BUFFER over yyrestart (as that is what Flex recommends)
and suggest yy_switch_to_buffer.
2003-05-12 19:34:21 +00:00
Paul Eggert 163ab32161 * lib/bitset.h (__INT_TO_PTR): Define to a value that presumes C89. 2003-05-05 20:39:42 +00:00
Paul Eggert cfbb7304d8 (__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>.
2003-05-05 20:39:04 +00:00
Paul Eggert e743727fcd * lib/bitset.h (BITSET_FOR_EACH, BITSET_FOR_EACH_REVERSE):
Do not overrun array bounds.
2003-05-04 06:30:14 +00:00
Paul Eggert 2175bfbd09 (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>.
2003-05-04 06:29:51 +00:00
Paul Eggert a1c84f4523 Omit spaces around "---". 2003-04-29 18:53:33 +00:00
Paul Eggert 6175ffe321 * data/yacc.c: (b4_lex_param): Corrected for the case where
%lex-param is provided and %pure-parser isn't.
2003-04-29 06:04:56 +00:00
Paul Eggert 68cdf74747 (b4_lex_param): Corrected for the case where %lex-param is provided
and %pure-parser isn't.

From Tim Van Holder in
<http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00045.html>.
2003-04-29 06:04:04 +00:00
Paul Eggert b1e9585744 Avoid gcc -Wundef warnings reported by Gerald Pfeifer in
<http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00044.html>.
2003-04-28 06:04:39 +00:00
Paul Eggert b929851a33 Avoid gcc -Wundef warnings reported by Gerald Pfeifer in
<http://mail.gnu.org/archive/html/bug-bison/2003-04/msg00044.html>.
(YYSTACK_ALLOC): Don't evaluate YYSTACK_USE_ALLOCA if it is not defined.
(YYMAXDEPTH): Don't evaluate YYMAXDEPTH if it is not defined.
2003-04-28 06:03:58 +00:00
Paul Eggert 3470c57bea * data/lalr1.cc (yy::Parser::pact_ninf_, yy::Parser::table_ninf_):
Declare to be of type suitable for the ninf value itself.
2003-04-27 05:57:13 +00:00
Paul Eggert 0c3c1f98ec (yy::Parser::pact_ninf_, yy::Parser::table_ninf_):
Declare to be of type suitable for the ninf value itself, not of
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>.
2003-04-27 05:56:34 +00:00
Paul Eggert acda9df6f9 * configure.ac (AC_FUNC_ERROR_AT_LINE): Remove, since gl_ERROR invokes it. 2003-04-27 05:28:21 +00:00
Paul Eggert b59d8a44df (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>.
2003-04-27 05:27:15 +00:00
Paul Eggert b5250f2635 * m4/error.m4: Update from Bruno Haible's 2003-04-14 patch to gnulib. 2003-04-22 03:33:29 +00:00
Paul Eggert 3192f9ece7 Update from Bruno Haible's 2003-04-14 patch to gnulib. 2003-04-22 03:33:01 +00:00
Paul Eggert 089ac0f11c * data/glr.c (yyexpandGLRStack) [!YYSTACKEXPANDABLE]:
Fix obvious typo that results in uncompilable GLR parsers
when both %pure-parser and %locations are used.  (trivial change)
2003-04-21 19:37:40 +00:00