platform/upstream/bison.git
21 years ago(%nonassoc and eof): #undef memcmp and realloc.
Paul Eggert [Sat, 19 Oct 2002 01:09:36 +0000 (01:09 +0000)]
(%nonassoc and eof): #undef memcmp and realloc.

21 years ago(_AT_DATA_CALC_Y): #undef memcmp and realloc.
Paul Eggert [Sat, 19 Oct 2002 01:09:13 +0000 (01:09 +0000)]
(_AT_DATA_CALC_Y): #undef memcmp and realloc.

21 years ago* src/getargs.h (trace_e): Add trace_scan, and trace_parse.
Akim Demaille [Thu, 17 Oct 2002 17:47:33 +0000 (17:47 +0000)]
* src/getargs.h (trace_e): Add trace_scan, and trace_parse.
* src/getargs.c (trace_types, trace_args): Adjust.
* src/reader.c (grammar_current_rule_prec_set)
(grammar_current_rule_dprec_set, grammar_current_rule_merge_set):
Standardize error messages.
And s/@prec/%prec/!
(reader): Use trace_flag to enable scanner/parser debugging,
instead of an adhoc scheme.
* src/scan-gram.l: Remove trailing debugging code.

21 years ago* src/muscle_tab.h (MUSCLE_TAB_H_): Was misspelled as MUSCLE_TAB_H.
Paul Eggert [Thu, 17 Oct 2002 06:31:51 +0000 (06:31 +0000)]
* src/muscle_tab.h (MUSCLE_TAB_H_): Was misspelled as MUSCLE_TAB_H.

21 years ago(MUSCLE_TAB_H_): Was misspelled as MUSCLE_TAB_H_.
Paul Eggert [Thu, 17 Oct 2002 06:27:41 +0000 (06:27 +0000)]
(MUSCLE_TAB_H_): Was misspelled as MUSCLE_TAB_H_.

21 years ago* NEWS: Officially drop support for building Bison with K&R C,
Paul Eggert [Thu, 17 Oct 2002 01:29:58 +0000 (01:29 +0000)]
* NEWS: Officially drop support for building Bison with K&R C,
since it didn't work anyway and it's not worth worrying about.
* Makefile.maint (wget_files): Remove ansi2knr.c.
(ansi2knr.c-url_prefix): Remove.
* lib/.cvsignore: Remove ansi2knr, ansi2knr.*.
* lib/Makefile.am (AUTOMAKE_OPTIONS): Remove.
* src/Makefile.am (AUTOMAKE_OPTIONS): Remove.

21 years ago(AUTOMAKE_OPTIONS): Remove.
Paul Eggert [Thu, 17 Oct 2002 01:29:01 +0000 (01:29 +0000)]
(AUTOMAKE_OPTIONS): Remove.

21 years agoRemove ansi2knr, ansi2knr.*.
Paul Eggert [Thu, 17 Oct 2002 01:26:33 +0000 (01:26 +0000)]
Remove ansi2knr, ansi2knr.*.

21 years agoOfficially drop support for building Bison with K&R C,
Paul Eggert [Thu, 17 Oct 2002 01:24:46 +0000 (01:24 +0000)]
Officially drop support for building Bison with K&R C,
since it didn't work anyway and it's not worth worrying about.

21 years ago(wget_files): Remove ansi2knr.c.
Paul Eggert [Thu, 17 Oct 2002 00:14:32 +0000 (00:14 +0000)]
(wget_files): Remove ansi2knr.c.
(ansi2knr.c-url_prefix): Remove.

21 years agoBump to 1.75a.
Akim Demaille [Wed, 16 Oct 2002 06:32:07 +0000 (06:32 +0000)]
Bump to 1.75a.

21 years agoStop using the "enum_" trick for K&R-style function definitions;
Paul Eggert [Wed, 16 Oct 2002 06:29:12 +0000 (06:29 +0000)]
Stop using the "enum_" trick for K&R-style function definitions;
it confused me, and I was the author!  Instead, assume that people
who want to use K&R C compilers (when using these modules in GCC,
perhaps?) will run ansi2knr.

21 years ago(enum_lbitset_find_mode): Remove. All uses of "enum_" changed to "enum ".
Paul Eggert [Wed, 16 Oct 2002 06:27:59 +0000 (06:27 +0000)]
(enum_lbitset_find_mode): Remove.  All uses of "enum_" changed to "enum ".

(debug_lbitset, lbitset_and, lbitset_and_cmp, lbitset_andn,
lbitset_andn_cmp, lbitset_bytes, lbitset_copy, lbitset_copy_cmp,
lbitset_disjoint_p, lbitset_elt_alloc, lbitset_elt_calloc,
lbitset_elt_find, lbitset_elt_free, lbitset_elt_link,
lbitset_elt_unlink, lbitset_elt_zero_p, lbitset_empty_p,
lbitset_equal_p, lbitset_free, lbitset_init, lbitset_list,
lbitset_list_reverse, lbitset_not, lbitset_ones, lbitset_op3_cmp,
lbitset_or, lbitset_or_cmp, lbitset_prune, lbitset_release_memory,
lbitset_reset, lbitset_set, lbitset_size, lbitset_subset_p,
lbitset_test, lbitset_weed, lbitset_xor, lbitset_xor_cmp,
lbitset_zero): Use function prototypes; this removes the need for
declaring static functions simply to provide their prototypes.

21 years ago(enum_ebitset_find_mode): Remove. All uses of "enum_" changed to "enum ".
Paul Eggert [Wed, 16 Oct 2002 06:26:31 +0000 (06:26 +0000)]
(enum_ebitset_find_mode): Remove.  All uses of "enum_" changed to "enum ".
(ebitset_and, ebitset_and_cmp, ebitset_andn, ebitset_andn_cmp,
ebitset_bytes, ebitset_copy, ebitset_copy_, ebitset_copy_cmp,
ebitset_disjoint_p, ebitset_elt_add, ebitset_elt_alloc,
ebitset_elt_calloc, ebitset_elt_find, ebitset_elt_free,
ebitset_elt_last, ebitset_elt_remove, ebitset_elt_zero_p,
ebitset_elts_grow, ebitset_empty_p, ebitset_equal_p, ebitset_free,
ebitset_init, ebitset_list, ebitset_list_reverse, ebitset_not,
ebitset_ones, ebitset_op3_cmp, ebitset_or, ebitset_or_cmp,
ebitset_release_memory, ebitset_reset, ebitset_set, ebitset_size,
ebitset_subset_p, ebitset_test, ebitset_weed, ebitset_xor,
ebitset_xor_cmp, ebitset_zero): Use function prototypes; this removes
the need for declaring static functions simply to provide their
prototypes.

21 years ago(bitsetv_alloc): enum_bitset_type -> enum bitset_type
Paul Eggert [Wed, 16 Oct 2002 06:24:26 +0000 (06:24 +0000)]
(bitsetv_alloc): enum_bitset_type -> enum bitset_type

21 years ago(bitsetv_alloc, bitsetv_create, bitsetv_free, bitsetv_zero,
Paul Eggert [Wed, 16 Oct 2002 06:23:21 +0000 (06:23 +0000)]
(bitsetv_alloc, bitsetv_create, bitsetv_free, bitsetv_zero,
bitsetv_ones, bitsetv_transitive_closure, bitsetv_dump,
debug_bitsetv): Use function prototypes; this removes the need for
declaring static functions simply to provide their prototypes.

21 years ago(bitset_stats_init): enum_bitset_type -> enum bitset_type.
Paul Eggert [Wed, 16 Oct 2002 06:22:04 +0000 (06:22 +0000)]
(bitset_stats_init): enum_bitset_type -> enum bitset_type.

21 years ago(bitset_log_histogram_print, bitset_percent_histogram_print,
Paul Eggert [Wed, 16 Oct 2002 06:20:44 +0000 (06:20 +0000)]
(bitset_log_histogram_print, bitset_percent_histogram_print,
bitset_stats_and, bitset_stats_and_cmp, bitset_stats_and_or,
bitset_stats_and_or_cmp, bitset_stats_andn, bitset_stats_andn_cmp,
bitset_stats_andn_or, bitset_stats_andn_or_cmp, bitset_stats_copy,
bitset_stats_count, bitset_stats_disable, bitset_stats_disjoint_p,
bitset_stats_dump, bitset_stats_empty_p, bitset_stats_enable,
bitset_stats_equal_p, bitset_stats_free, bitset_stats_init,
bitset_stats_list, bitset_stats_list_reverse, bitset_stats_not,
bitset_stats_ones, bitset_stats_or, bitset_stats_or_and,
bitset_stats_or_and_cmp, bitset_stats_or_cmp, bitset_stats_print,
bitset_stats_print_1, bitset_stats_read, bitset_stats_reset,
bitset_stats_set, bitset_stats_size, bitset_stats_subset_p,
bitset_stats_test, bitset_stats_toggle, bitset_stats_type_get,
bitset_stats_write, bitset_stats_xor, bitset_stats_xor_cmp,
bitset_stats_zero): Use function prototypes; this removes the need for
declaring static functions simply to provide their prototypes.

21 years ago(bitset_set, bitset_reset, bitset_test): Use function prototypes; this
Paul Eggert [Wed, 16 Oct 2002 06:19:22 +0000 (06:19 +0000)]
(bitset_set, bitset_reset, bitset_test): Use function prototypes; this
removes the need for declaring static functions simply to provide
their prototypes.

21 years ago(bitset_alloc, bitset_and_or_, bitset_and_or_cmp_, bitset_andn_or_,
Paul Eggert [Wed, 16 Oct 2002 06:18:00 +0000 (06:18 +0000)]
(bitset_alloc, bitset_and_or_, bitset_and_or_cmp_, bitset_andn_or_,
bitset_andn_or_cmp_, bitset_bytes, bitset_copy_, bitset_count_,
bitset_create, bitset_dump, bitset_first, bitset_free, bitset_init,
bitset_last, bitset_next, bitset_obstack_alloc, bitset_obstack_free,
bitset_only_set_p, bitset_op4_cmp, bitset_or_and_, bitset_or_and_cmp_,
bitset_prev, bitset_print, bitset_release_memory, bitset_toggle_,
bitset_type_choose, bitset_type_get, bitset_type_name_get,
debug_bitset): Use function prototypes; this removes the need for
declaring static functions simply to provide their prototypes.

21 years ago(enum_bitset_ops, enum_bitset_type): Remove.
Paul Eggert [Wed, 16 Oct 2002 06:16:29 +0000 (06:16 +0000)]
(enum_bitset_ops, enum_bitset_type): Remove.
All uses of "enum_" changed to "enum ".

21 years ago(abitset_and, abitset_and_cmp, abitset_and_or,
Paul Eggert [Wed, 16 Oct 2002 06:15:02 +0000 (06:15 +0000)]
(abitset_and, abitset_and_cmp, abitset_and_or,
abitset_and_or_cmp, abitset_andn, abitset_andn_cmp,
abitset_andn_or, abitset_andn_or_cmp, abitset_bytes, abitset_copy,
abitset_copy1, abitset_disjoint_p, abitset_empty_p,
abitset_equal_p, abitset_init, abitset_list, abitset_list_reverse,
abitset_not, abitset_ones, abitset_or, abitset_or_and,
abitset_or_and_cmp, abitset_or_cmp, abitset_reset, abitset_set,
abitset_size, abitset_small_list, abitset_subset_p, abitset_test,
abitset_unused_clear, abitset_xor, abitset_xor_cmp, abitset_zero):
Use function prototypes; this removes the need for declaring
static functions simply to provide their prototypes.

21 years ago.
Akim Demaille [Mon, 14 Oct 2002 18:15:05 +0000 (18:15 +0000)]
.

21 years agoVersion 1.75. BISON-1_75
Akim Demaille [Mon, 14 Oct 2002 16:29:41 +0000 (16:29 +0000)]
Version 1.75.

21 years ago* tests/Makefile.am (maintainer-check-posix): New.
Akim Demaille [Mon, 14 Oct 2002 15:09:15 +0000 (15:09 +0000)]
* tests/Makefile.am (maintainer-check-posix): New.

21 years ago* data/glr.c [YYDEBUG] (YYLEFTMOST_STATE): Initialize the yyloc
Akim Demaille [Mon, 14 Oct 2002 13:00:48 +0000 (13:00 +0000)]
* data/glr.c [YYDEBUG] (YYLEFTMOST_STATE): Initialize the yyloc
member.

21 years agoRegen.
Akim Demaille [Mon, 14 Oct 2002 12:49:24 +0000 (12:49 +0000)]
Regen.

21 years agoUpdate.
Akim Demaille [Mon, 14 Oct 2002 12:32:48 +0000 (12:32 +0000)]
Update.

21 years ago* src/tables.c (table_ninf_remap): base -> tab.
Akim Demaille [Mon, 14 Oct 2002 11:38:21 +0000 (11:38 +0000)]
* src/tables.c (table_ninf_remap): base -> tab.
Reported by Matt Rosing.

21 years ago* tests/action.at, tests/calc.at, tests/conflicts.at,
Paul Eggert [Mon, 14 Oct 2002 08:44:02 +0000 (08:44 +0000)]
* tests/action.at, tests/calc.at, tests/conflicts.at,
tests/cxx-type.at, tests/headers.at, tests/input.at,
tests/regression.at, tests/synclines.at, tests/torture.at:
Say "bison -o foo.c foo.y", not "bison foo.y -o foo.c",
so that the tests still work even if POSIXLY_CORRECT is set.
* doc/bison.texinfo (Rpcalc Compile, Invocation): Likewise.

21 years agoSay "bison -o foo.c foo.y", not "bison foo.y -o foo.c",
Paul Eggert [Mon, 14 Oct 2002 08:43:36 +0000 (08:43 +0000)]
Say "bison -o foo.c foo.y", not "bison foo.y -o foo.c",
so that the commands still work even if POSIXLY_CORRECT is set.

21 years ago* data/c.m4 (b4_int_type): Use yysigned_char instead of signed char,
Paul Eggert [Mon, 14 Oct 2002 08:07:01 +0000 (08:07 +0000)]
* data/c.m4 (b4_int_type): Use yysigned_char instead of signed char,
for portability to K&R hosts.  Fix typo: signed char is guaranteed
only to 127, not to 128.
* data/glr.c (yysigned_char): New type.
* data/yacc.c (yysigned_char): Likewise.
* tests/regression.at (Web2c Actions): signed char -> yysigned_char.

21 years ago(b4_int_type): Use yysigned_char instead of signed char,
Paul Eggert [Mon, 14 Oct 2002 08:06:33 +0000 (08:06 +0000)]
(b4_int_type): Use yysigned_char instead of signed char,
for portability to K&R hosts.  Fix typo: signed char is guaranteed
only to 127, not to 128.

21 years ago(yysigned_char): New type.
Paul Eggert [Mon, 14 Oct 2002 08:06:06 +0000 (08:06 +0000)]
(yysigned_char): New type.

21 years ago(Web2c Actions): signed char -> yysigned_char.
Paul Eggert [Mon, 14 Oct 2002 08:05:20 +0000 (08:05 +0000)]
(Web2c Actions): signed char -> yysigned_char.

21 years ago* data/yacc.c (yyparse): Rewrite to avoid "comparison is always
Paul Eggert [Mon, 14 Oct 2002 06:55:10 +0000 (06:55 +0000)]
* data/yacc.c (yyparse): Rewrite to avoid "comparison is always
true due to limited range of data type" warning from GCC.

21 years ago(yyparse): Rewrite to avoid "comparison is always true due to limited
Paul Eggert [Mon, 14 Oct 2002 06:54:41 +0000 (06:54 +0000)]
(yyparse): Rewrite to avoid "comparison is always true due to limited
range of data type" warning from GCC in synclines.at test.

21 years ago* data/c.m4 (b4_token_defines): Protect against double-inclusion
Paul Eggert [Sun, 13 Oct 2002 20:36:45 +0000 (20:36 +0000)]
* data/c.m4 (b4_token_defines): Protect against double-inclusion
by wrapping enum yytokentype's definition inside #ifndef
YYTOKENTYPE.  This undoes a bug I introduced on 2002-10-12.

21 years ago(b4_token_defines): Protect against double-inclusion
Paul Eggert [Sun, 13 Oct 2002 20:35:06 +0000 (20:35 +0000)]
(b4_token_defines): Protect against double-inclusion
by wrapping enum yytokentype's definition inside #ifndef
YYTOKENTYPE.  This undoes a bug I introduced on 2002-10-12.

21 years ago* data/glr.c (yyglrShiftDefer, yyaddDeferredAction, yydoAction):
Akim Demaille [Sun, 13 Oct 2002 19:40:30 +0000 (19:40 +0000)]
* data/glr.c (yyglrShiftDefer, yyaddDeferredAction, yydoAction):
Un yy- yyrhs to avoid the name clash with the global YYRHS.

21 years ago* Makefile.maint: Update from Autoconf 2.54.
Akim Demaille [Sun, 13 Oct 2002 19:39:29 +0000 (19:39 +0000)]
* Makefile.maint: Update from Autoconf 2.54.
* m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Remove, shipped with 2.54.

21 years ago* src/print.c (print_state): Separate the list of solved conflicts
Akim Demaille [Sun, 13 Oct 2002 19:35:59 +0000 (19:35 +0000)]
* src/print.c (print_state): Separate the list of solved conflicts
from the other items.
* tests/conflicts.at (Resolved SR Conflicts): Adjust.

21 years agoLet nondeterministic skeletons be usable with deterministic
Akim Demaille [Sun, 13 Oct 2002 18:50:40 +0000 (18:50 +0000)]
Let nondeterministic skeletons be usable with deterministic
tables.
With the patch, GAWK compiled by GCC without -O2 passes its test
suite using a GLR parser driven by LALR tables.  It fails with -O2
because `struct stat' gives two different answers on my machine:
88 (definition of an auto var) and later 96 (memset on this var).
Hence the stack is badly corrumpted.  The headers inclusion is to
blame: if I move the awk.h inclusion before GLR's system header
inclusion, the two struct stat have the same size.
* src/tables.c (pack_table): Always create conflict_table.
(token_actions): Always create conflict_list.
* data/glr.c (YYFLAG): Remove, unused.

21 years ago* configure.ac (AC_GNU_SOURCE): Use it instead of hand written code.
Akim Demaille [Sun, 13 Oct 2002 18:49:44 +0000 (18:49 +0000)]
* configure.ac (AC_GNU_SOURCE): Use it instead of hand written code.
(O0FLAGS): New.
(VALGRIND, GXX): New.
* tests/atlocal.in (CFLAGS): Use O0FLAGS.
* tests/bison.in: Run $PREBISON a pre-command.
* tests/Makefile.am (maintainer-check, maintainer-check-valgrind)
(maintainer-check-g++): New.
* Makefile.am (maintainer-check): New.

21 years ago* data/glr.c: Formatting changes.
Akim Demaille [Sun, 13 Oct 2002 14:25:55 +0000 (14:25 +0000)]
* data/glr.c: Formatting changes.
Tweak some trace messages to match yacc.c's.

21 years agoGLR parsers sometimes raise parse errors instead of performing the
Akim Demaille [Sun, 13 Oct 2002 14:25:14 +0000 (14:25 +0000)]
GLR parsers sometimes raise parse errors instead of performing the
default reduction.
Reported by Charles-Henry de Boysson.
* tests/calc.at (_AT_CHECK_CALC, _AT_CHECK_CALC_ERROR): Don't
check the length of the traces when %glr.
(_AT_CHECK_CALC_ERROR): Also skip `^Stack' lines, coming from
GLR's traces.
(AT_CHECK_CALC_LALR, AT_CHECK_CALC_GLR): New.
Test GLR parsers.
* data/glr.c (YYLEFTMOST_STATE): Fix its value.
(yyltype): Remove the yy prefix from the member names.
(yytable): Complete its comment.
(yygetLRActions): Map error action number from YYTABLE from
YYTABLE_NINF to 0.
(yyisErrorAction): No longer compare YYACTION to YYPACT_NINF
(which was a bug: it should have been YYTABEL_NINF, and yet it was
not satisfying as we could compare an YYACTION computed from
YYDEFACT to YYTABLE_NINF although they are unrelated): 0 is the
only value for error actions.
(yyreportParseError): In verbose parse error messages, don't issue
`error' in the list of expected tokens.
* data/yacc.c (yyparse) <yybackup>: Rewrite the decoding of the
next action to perform to match glr.c's decoding.
(yytable): Complete its comment.

21 years agoRegenerate.
Paul Eggert [Sun, 13 Oct 2002 09:09:49 +0000 (09:09 +0000)]
Regenerate.

21 years ago Fix problem reported by Henrik Grubbstroem in
Paul Eggert [Sun, 13 Oct 2002 08:40:10 +0000 (08:40 +0000)]
 Fix problem reported by Henrik Grubbstroem in
 <http://mail.gnu.org/pipermail/bug-bison/2002-October/001670.html>:
 "nonterm: { $$ = 123; } { $$ = $1; };" was wrongly rejected,
 because the Bison parser reads the second action before reducing
 the first one.
 * src/scan-gram.l (rule_length): New static var.
 Use it to keep track of the rule length in the scanner, since
 we can't expect the parser to be in lock-step sync with the scanner.
 (handle_action_dollar, handle_action_at): Use this var.
 * tests/actions.at (Exotic Dollars): Test for the problem.

21 years ago(Exotic Dollars): Test for "nonterm: { $$ = 123; } { $$ = $1; };" bug.
Paul Eggert [Sun, 13 Oct 2002 08:39:31 +0000 (08:39 +0000)]
(Exotic Dollars): Test for "nonterm: { $$ = 123; } { $$ = $1; };" bug.

21 years ago(rule_length): New static var.
Paul Eggert [Sun, 13 Oct 2002 08:38:39 +0000 (08:38 +0000)]
(rule_length): New static var.
Use it to keep track of the rule length in the scanner, since
we can't expect the parser to be in lock-step sync with the scanner.
(handle_action_dollar, handle_action_at): Use this var.

21 years agoAttempt to fix SunOS 4.1.4 porting bug reported by Peter Klein in
Paul Eggert [Sun, 13 Oct 2002 06:00:24 +0000 (06:00 +0000)]
Attempt to fix SunOS 4.1.4 porting bug reported by Peter Klein in
<http://mail.gnu.org/pipermail/bug-bison/2002-October/001674.html>.

21 years ago(BISON_PREREQ_TIMEVAR): Check for <sys/time.h>.
Paul Eggert [Sun, 13 Oct 2002 05:59:40 +0000 (05:59 +0000)]
(BISON_PREREQ_TIMEVAR): Check for <sys/time.h>.
Include <sys/time.h> when checking for clock_t and struct tms.
Use same include order as source.

21 years agoImport GCC version as of today, then merge Bison's changes.
Paul Eggert [Sun, 13 Oct 2002 05:58:38 +0000 (05:58 +0000)]
Import GCC version as of today, then merge Bison's changes.
Change "GCC" to "Bison" in copyright notice.

21 years agoFix copyright and authorship notice to point to Bison, not GCC.
Paul Eggert [Sun, 13 Oct 2002 05:57:10 +0000 (05:57 +0000)]
Fix copyright and authorship notice to point to Bison, not GCC.

21 years ago[! IN_GCC && HAVE_SYS_TIME_H]: Include <sys/time.h>.
Paul Eggert [Sun, 13 Oct 2002 05:56:20 +0000 (05:56 +0000)]
[! IN_GCC && HAVE_SYS_TIME_H]: Include <sys/time.h>.
Update copyright date and clarify comments.
(get_time) [IN_GCC]: Keep the GCC version for reference.

Merge GCC changes.  Change "GCC" to "Bison" in the copyright notice.

21 years agoImport of GCC head 2002-10-11
Paul Eggert [Sun, 13 Oct 2002 04:42:59 +0000 (04:42 +0000)]
Import of GCC head 2002-10-11

21 years ago* src/reader.c (grammar_current_rule_check):
Paul Eggert [Sun, 13 Oct 2002 03:53:18 +0000 (03:53 +0000)]
* 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/pipermail/bug-bison/2002-October/001673.html>.

21 years ago(grammar_current_rule_check):
Paul Eggert [Sun, 13 Oct 2002 03:52:53 +0000 (03:52 +0000)]
(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/pipermail/bug-bison/2002-October/001673.html>.

21 years ago* data/c.m4 (b4_token_enum): Do not define YYTOKENTYPE.
Paul Eggert [Sat, 12 Oct 2002 23:21:00 +0000 (23:21 +0000)]
* 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/pipermail/bug-bison/2002-October/001672.html>.

21 years agoOutput token definitions before the first part of user declarations.
Paul Eggert [Sat, 12 Oct 2002 23:20:23 +0000 (23:20 +0000)]
Output token definitions before the first part of user declarations.

21 years ago(b4_token_enum): Do not define YYTOKENTYPE.
Paul Eggert [Sat, 12 Oct 2002 23:18:52 +0000 (23:18 +0000)]
(b4_token_enum): Do not define YYTOKENTYPE.

21 years ago(Calling Convention): Fix strncmp typo.
Paul Eggert [Fri, 11 Oct 2002 21:19:27 +0000 (21:19 +0000)]
(Calling Convention): Fix strncmp typo.

21 years ago* data/yacc.c (yyreport_parse_error): Remove, putting its body into...
Paul Eggert [Fri, 11 Oct 2002 20:54:17 +0000 (20:54 +0000)]
* data/yacc.c (yyreport_parse_error): Remove, putting its body into...
(yyparse): here.  This undoes some of the 2002-07-25 change.
Compatibility problem reported by Ralf S. Engelschall with
OSSP cfg <http://www.ossp.org/pkg/lib/cfg/>.

21 years ago(yyreport_parse_error): Remove, putting its body into...
Paul Eggert [Fri, 11 Oct 2002 20:53:39 +0000 (20:53 +0000)]
(yyreport_parse_error): Remove, putting its body into...
(yyparse): here.  This undoes some of the 2002-07-25 change.
Compatibility problem reported by Ralf S. Engelschall with
OSSP cfg <http://www.ossp.org/pkg/lib/cfg/>.

21 years ago* tests/regression.at Characters Escapes): New.
Akim Demaille [Fri, 11 Oct 2002 11:23:19 +0000 (11:23 +0000)]
* tests/regression.at Characters Escapes): New.
* src/scan-gram.l (SC_ESCAPED_CHARACTER): Accept ' in strings and
characters.
Reported by Jan Nieuwenhuizen.

21 years ago* po/id.po: New.
Akim Demaille [Fri, 11 Oct 2002 10:14:32 +0000 (10:14 +0000)]
* po/id.po: New.

21 years agoPortability fixes for bitsets; this also avoids several GCC warnings.
Paul Eggert [Thu, 10 Oct 2002 07:38:40 +0000 (07:38 +0000)]
Portability fixes for bitsets; this also avoids several GCC warnings.

21 years agoInclude bitset.h, not bbitset.h.
Paul Eggert [Thu, 10 Oct 2002 07:35:19 +0000 (07:35 +0000)]
Include bitset.h, not bbitset.h.

21 years agoInclude <stddef.h>, for offsetof.
Paul Eggert [Thu, 10 Oct 2002 07:33:59 +0000 (07:33 +0000)]
Include <stddef.h>, for offsetof.
(lbitset_bytes): Adjust to new, unique names for structures.

(lbitset_and, lbitset_and_cmp, lbitset_andn, lbitset_andn_cmp,
lbitset_or, lbitset_or_cmp, lbitset_xor, lbitset_xor_cmp,
lbitset_empty_p, lbitset_ones, lbitset_not, lbitset_subset_p,
lbitset_disjoint_p, debug_lbitset): Supply prototype decls.

(enum_lbitset_find_mode): New type.  All instances of parameters of
type enum FOO are now of type enum_FOO, to conform to the C Standard.

(struct lbitset_struct, lbitset, bitset_struct, PFV): Remove.

(lbitset_and, lbitset_andn, lbitset_or, lbitset_xor): New functions.

21 years ago(ebitset_bytes): Adjust to new, unique names for structures.
Paul Eggert [Thu, 10 Oct 2002 07:28:53 +0000 (07:28 +0000)]
(ebitset_bytes): Adjust to new, unique names for structures.
(enum_ebitset_find_mode): New type.
(struct ebitset_struct, ebitset, struct bitset_struct, PFV): Remove.
(ebitset_and, ebitset_andn, ebitset_or,
ebitset_xor, ebitset_copy, ebitset_ones, ebitset_empty_p): New decls.

21 years agoenum -> enum_
Paul Eggert [Thu, 10 Oct 2002 07:26:15 +0000 (07:26 +0000)]
enum -> enum_

21 years ago(bitsetv_alloc): Return a size that is aligned properly for vectors of
Paul Eggert [Thu, 10 Oct 2002 07:25:21 +0000 (07:25 +0000)]
(bitsetv_alloc): Return a size that is aligned properly for vectors of
objects.  Do not assume that adding a header size to a multiple of a
word size yields a value that is properly aligned for the whole union.

(bitsetv_alloc): Add a cast to (void *) to avoid a GCC warning.

21 years ago(bitset_stats_bytes): Adjust to new, unique names for structures.
Paul Eggert [Thu, 10 Oct 2002 07:23:15 +0000 (07:23 +0000)]
(bitset_stats_bytes): Adjust to new, unique names for structures.

(bitset_stats_count, bitset_stats_empty_p, bitset_stats_ones,
bitset_stats_zero, bitset_stats_copy, bitset_stats_disjoint_p,
bitset_stats_equal_p, bitset_stats_not, bitset_stats_subset_p,
bitset_stats_and, bitset_stats_and_cmp, bitset_stats_andn,
bitset_stats_andn_cmp, bitset_stats_or, bitset_stats_or_cmp,
bitset_stats_xor, bitset_stats_xor_cmp, bitset_stats_and_or,
bitset_stats_and_or_cmp, bitset_stats_andn_or,
bitset_stats_andn_or_cmp, bitset_stats_or_and,
bitset_stats_or_and_cmp): Supply prototype decls, to improve the
type-checking that GCC can do.

(struct bitset_stats_struct, bitset_stats, struct bitset_struct): Remove.

21 years ago(struct bitset_struct): Remove, replacing with....
Paul Eggert [Thu, 10 Oct 2002 07:20:24 +0000 (07:20 +0000)]
(struct bitset_struct): Remove, replacing with....
(union bitset_union, struct abitset_struct, struct ebitset_struct,
struct lbitset_struct, struct bitset_stats_struct): New types.
All uses of struct bitset_struct changed to union bitset_union,
etc.
(bitset_next, bitset_prev, bitset_only_set_p): Declare.

21 years ago(bitset_op4_cmp): Supply prototype decls,
Paul Eggert [Thu, 10 Oct 2002 07:18:47 +0000 (07:18 +0000)]
(bitset_op4_cmp): Supply prototype decls,
to improve the type-checking that GCC can do.

(bitset_and_or_, bitset_andn_or_, bitset_or_and_): New functions.

21 years ago(enum_bitset_ops, enum_bitset_type): New types.
Paul Eggert [Thu, 10 Oct 2002 07:15:56 +0000 (07:15 +0000)]
(enum_bitset_ops, enum_bitset_type): New types.
All instances of parameters of type enum bitset_opts are now of
type enum_bitset_opts, to conform to the C Standard, and similarly
for enum_bitset_type.

(bitset): Now points to a union, not to a struct.
All instances of "struct bitset_struct *" replaced with "bitset".

(bitset_and_or_, bitset_andn_or_, bitset_or_and_): New decls.

21 years agoInclude <stddef.h>, for offsetof.
Paul Eggert [Thu, 10 Oct 2002 07:13:58 +0000 (07:13 +0000)]
Include <stddef.h>, for offsetof.

(abitset_bytes): Return a size that is aligned
properly for vectors of objects.  Do not assume that adding a
header size to a multiple of a word size yields a value that is
properly aligned for the whole union.

(abitset_ones, abitset_zero, abitset_empty_p, abitset_copy1,
abitset_not, abitset_equal_p, abitset_subset_p, abitset_disjoint_p,
abitset_and, abitset_and_cmp, abitset_andn, abitset_andn_cmp,
abitset_or, abitset_or_cmp, abitset_xor, abitset_xor_cmp,
abitset_and_or, abitset_and_or_cmp, abitset_andn_or,
abitset_andn_or_cmp, abitset_or_and, abitset_or_and_cmp,
abitset_copy): Supply prototype decls, to improve the type-checking
that GCC can do.

(struct abitset_struct, abitset, struct bitset_struct): Remove.

21 years ago* lib/bitset.h (bitset_reset): Do not assume that bitset_word is
Paul Eggert [Mon, 7 Oct 2002 19:58:00 +0000 (19:58 +0000)]
* 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/pipermail/bison-patches/2002-August/001111.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.

21 years agoBison should now work on 64-bit hosts.
Paul Eggert [Mon, 7 Oct 2002 06:08:30 +0000 (06:08 +0000)]
Bison should now work on 64-bit hosts.

21 years ago(bitset_reset): Do not assume that bitset_word is
Paul Eggert [Mon, 7 Oct 2002 05:43:35 +0000 (05:43 +0000)]
(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/pipermail/bison-patches/2002-August/001111.html>,
which was inadvertently undone by the 2002-09-30 patch.

21 years ago(debug_lbitset): Do not assume that bitset_word is the same width as
Paul Eggert [Mon, 7 Oct 2002 05:41:35 +0000 (05:41 +0000)]
(debug_lbitset): Do not assume that bitset_word is the same width as
int.

21 years agoBump to 1.50a.
Paul Eggert [Mon, 7 Oct 2002 04:51:50 +0000 (04:51 +0000)]
Bump to 1.50a.

21 years agoVersion 1.50.
Paul Eggert [Sat, 5 Oct 2002 06:25:50 +0000 (06:25 +0000)]
Version 1.50.

21 years ago(AC_INIT): Version 1.50.
Paul Eggert [Sat, 5 Oct 2002 06:24:55 +0000 (06:24 +0000)]
(AC_INIT): Version 1.50.

21 years agoUpdate and regenerate.
Paul Eggert [Sat, 5 Oct 2002 06:23:42 +0000 (06:23 +0000)]
Update and regenerate.

21 years ago(reader): SHRT_MAX -> SYMBOL_NUMBER_MAX.
Paul Eggert [Sat, 5 Oct 2002 05:47:51 +0000 (05:47 +0000)]
(reader): SHRT_MAX -> SYMBOL_NUMBER_MAX.

21 years ago(SYMBOL_NUMBER_MAX): New macro.
Paul Eggert [Sat, 5 Oct 2002 05:47:14 +0000 (05:47 +0000)]
(SYMBOL_NUMBER_MAX): New macro.

21 years ago(GOTO_NUMBER_MAX): INT_MAX -> SHRT_MAX.
Paul Eggert [Sat, 5 Oct 2002 05:46:42 +0000 (05:46 +0000)]
(GOTO_NUMBER_MAX): INT_MAX -> SHRT_MAX.

21 years ago(ITEM_NUMBER_MIN): MIN_MAX -> INT_MIN.
Paul Eggert [Sat, 5 Oct 2002 05:46:08 +0000 (05:46 +0000)]
(ITEM_NUMBER_MIN): MIN_MAX -> INT_MIN.

21 years ago* lib/bbitset.h (BITSET_WINDEX_MAX): Redefine so that it cannot be
Paul Eggert [Sat, 5 Oct 2002 05:02:30 +0000 (05:02 +0000)]
* lib/bbitset.h (BITSET_WINDEX_MAX): Redefine so that it cannot be
  interpreted as signed.
* lib/ebitset.c (ebitset_list): Fix bug.
From Michael Hayes.

21 years ago(AM_CFLAGS): Renamed from CFLAGS.
Paul Eggert [Sat, 5 Oct 2002 04:54:54 +0000 (04:54 +0000)]
(AM_CFLAGS): Renamed from CFLAGS.
(AM_YFLAGS): Renamed from YFLAGS.

21 years ago(AM_CFLAGS): Renamed from CFLAGS.
Paul Eggert [Sat, 5 Oct 2002 04:53:54 +0000 (04:53 +0000)]
(AM_CFLAGS): Renamed from CFLAGS.

21 years ago(Braces parsing): Use grep, not fgrep, as POSIX 1003.1-2001 has
Paul Eggert [Sat, 5 Oct 2002 04:50:45 +0000 (04:50 +0000)]
(Braces parsing): Use grep, not fgrep, as POSIX 1003.1-2001 has
removed fgrep.

21 years agoMinor spelling, grammar, and white space fixes.
Paul Eggert [Sat, 5 Oct 2002 04:45:45 +0000 (04:45 +0000)]
Minor spelling, grammar, and white space fixes.

(Symbols): Mention that any negative value returned from yylex
signifies end-of-input.  Warn about negative chars.  Mention
the portable Standard C character set.

21 years agoMore fixes for 64-bit hosts and large bitsets.
Paul Eggert [Wed, 2 Oct 2002 08:03:54 +0000 (08:03 +0000)]
More fixes for 64-bit hosts and large bitsets.

21 years ago(lbitset_bytes): Use size_t, not unsigned int, to count bytes.
Paul Eggert [Wed, 2 Oct 2002 08:02:06 +0000 (08:02 +0000)]
(lbitset_bytes): Use size_t, not unsigned int, to count bytes.

21 years ago(lbitset_size, lbitset_list, lbitset_list_merge):
Paul Eggert [Wed, 2 Oct 2002 08:00:19 +0000 (08:00 +0000)]
(lbitset_size, lbitset_list, lbitset_list_merge):
Use bitset_bindex, not int or unsigned int or size_t, to count bits.

(lbitset_bytes): Use size_t, not unsigned int, to count bytes.
Use proper printf formats for widths of integer types.

(lbitset_ones, lbitset_not): Use bitset_windex instead of unsigned int.

(lbitset_elt_find): Simplify windex calculation and avoid cast to unsigned.

21 years ago(ebitset_bytes): Use size_t, not unsigned int, to count bytes.
Paul Eggert [Wed, 2 Oct 2002 07:58:11 +0000 (07:58 +0000)]
(ebitset_bytes): Use size_t, not unsigned int, to count bytes.

21 years ago(ebitset_size, ebitset_list, ebitset_list_reverse):
Paul Eggert [Wed, 2 Oct 2002 07:57:24 +0000 (07:57 +0000)]
(ebitset_size, ebitset_list, ebitset_list_reverse):
Use bitset_bindex, not int or unsigned int or size_t, to count bits.

(ebitset_bytes): Use size_t, not unsigned int, to count bytes.

(struct ebitset_struct.size, ebitset_elts_grow,
ebitset_elt_add, ebitset_elt_remove, ebitset_weed,
ebitset_elt_find, ebitset_list_reverse, ebitset_list, ebitset_init):
Use bitset_windex instead of unsigned int.

(ebitset_elts_grow): Check for arithmetic overflow when computing sizes.

21 years ago(bitsetv_alloc, bitsetv_create):
Paul Eggert [Wed, 2 Oct 2002 07:55:44 +0000 (07:55 +0000)]
(bitsetv_alloc, bitsetv_create):
Use bitset_bindex, not int or unsigned int or size_t, to count bits.