platform/upstream/bison.git
19 years ago* tests/actions.at: Test that stack overflow invokes destructors.
Paul Eggert [Mon, 2 May 2005 04:52:33 +0000 (04:52 +0000)]
* tests/actions.at: Test that stack overflow invokes destructors.
From Marcus Holland-Moritz.
* data/yacc.c (yyerrlab): Move the code that destroys the stack
from here....
(yyreturn): to here.  That way, destructors are called properly
even if the stack overflows, or the user calls YYACCEPT or
YYABORT.  Stack-overflow problem reported by Marcus Holland-Moritz.
(yyoverflowlab): Destroy the lookahead.

19 years ago(YYSTACK_ALLOC_MAXIMUM): Add more-descriptive comment.
Paul Eggert [Mon, 25 Apr 2005 03:14:22 +0000 (03:14 +0000)]
(YYSTACK_ALLOC_MAXIMUM): Add more-descriptive comment.

19 years agoRegenerate.
Paul Eggert [Sun, 17 Apr 2005 08:14:52 +0000 (08:14 +0000)]
Regenerate.

19 years ago* tests/input.at (Torturing the Scanner): Adjust to lack of quotes
Paul Eggert [Sun, 17 Apr 2005 08:13:37 +0000 (08:13 +0000)]
* tests/input.at (Torturing the Scanner): Adjust to lack of quotes
in diagnostics.

19 years ago(Torturing the Scanner): Adjust to lack of quotes in diagnostics.
Paul Eggert [Sun, 17 Apr 2005 08:12:56 +0000 (08:12 +0000)]
(Torturing the Scanner): Adjust to lack of quotes in diagnostics.

19 years ago* NEWS: Bison-generated C parsers no longer quote literal strings
Paul Eggert [Sun, 17 Apr 2005 08:07:15 +0000 (08:07 +0000)]
* NEWS: Bison-generated C parsers no longer quote literal strings
associated with tokens.
* src/output.c (prepare_symbols): Don't escape strings,
since users don't want to see C escapes.
* tests/calc.at (AT_CHECK_CALC): Adjust to lack of quotes
in diagnostics.
* tests/regression.at (Token definitions, Web2c Actions): Likewise.

19 years ago* tests/torture.at (AT_INCREASE_DATA_SIZE): Skip the test if
Paul Eggert [Sat, 16 Apr 2005 08:11:52 +0000 (08:11 +0000)]
* tests/torture.at (AT_INCREASE_DATA_SIZE): Skip the test if
the data size is known to be too small and we can't increase it.

19 years ago(AT_INCREASE_DATA_SIZE): Skip the test if
Paul Eggert [Sat, 16 Apr 2005 08:11:33 +0000 (08:11 +0000)]
(AT_INCREASE_DATA_SIZE): Skip the test if
the data size is known to be too small and we can't increase it.

19 years agoRegenerate.
Paul Eggert [Sat, 16 Apr 2005 06:34:20 +0000 (06:34 +0000)]
Regenerate.

19 years ago* src/parse-gram.y: Include quotearg.h.
Paul Eggert [Sat, 16 Apr 2005 06:32:51 +0000 (06:32 +0000)]
* src/parse-gram.y: Include quotearg.h.
(string_as_id): Quote $1 before using it as a key, since the
lexer no longer quotes it for us.
(string_content): Don't strip quotes, since lexer no longer
quotes it for us.
* src/scan-gram.l: Include quotearg.h.
("\""): Omit quote.
("'"<SC_ESCAPED_CHARACTER>): Quote symbol before using it as
a key, since the rest of the lexer doesn't quote it.
* src/symtab.c (symbol_get): Don't quote symbol; caller does it now.
* tests/regression.at (Token definitions): Check for backslashes
in token strings.

19 years ago(YYSTACK_ALLOC_MAXIMUM): New macro.
Paul Eggert [Sat, 16 Apr 2005 06:25:03 +0000 (06:25 +0000)]
(YYSTACK_ALLOC_MAXIMUM): New macro.
(YYSIZE_T): Define to unsigned long int when using an older compiler.
(yyparse): Revamp code to generate long syntax error message, to
make it easier to translate, and to avoid problems with arithmetic
overflow.  Change "virtual memory" to "memory" in diagnostic, since
we don't know whether the memory is virtual.

19 years agoRegenerate.
Paul Eggert [Thu, 14 Apr 2005 00:09:11 +0000 (00:09 +0000)]
Regenerate.

19 years ago* NEWS: Bison-generated C parsers now use the _ macro to
Paul Eggert [Thu, 14 Apr 2005 00:08:56 +0000 (00:08 +0000)]
* NEWS: Bison-generated C parsers now use the _ macro to
translate strings.
* data/yacc.c (_) [!defined _]: New macro.
All English strings wrapped inside this macro.
* doc/bison.texinfo (Bison Parser): Document _.
* po/POTFILES.in: Include src/parse-gram.c, since it now
includes translateable strings that parse-gram.y doesn't.

19 years agoFix aliases bug reported by Tim Van Holder.
Paul Eggert [Tue, 12 Apr 2005 22:38:43 +0000 (22:38 +0000)]
Fix aliases bug reported by Tim Van Holder.

19 years ago(symbol_make_alias): Call symbol_type_set,
Paul Eggert [Tue, 12 Apr 2005 22:38:20 +0000 (22:38 +0000)]
(symbol_make_alias): Call symbol_type_set,
reverting the 2004-10-11 change to this function.
(symbol_check_alias_consistency): Don't call symbol_type_set
if the type name is already correct.

19 years ago(Typed symbol aliases): New test.
Paul Eggert [Tue, 12 Apr 2005 22:35:53 +0000 (22:35 +0000)]
(Typed symbol aliases): New test.

19 years ago* tests/regression.at (Token definitions): Don't use a token named c.
Paul Eggert [Sat, 26 Mar 2005 01:13:13 +0000 (01:13 +0000)]
* tests/regression.at (Token definitions): Don't use a token named c.

19 years ago(Token definitions): Don't use a token named c, as that generates a
Paul Eggert [Sat, 26 Mar 2005 01:12:59 +0000 (01:12 +0000)]
(Token definitions): Don't use a token named c, as that generates a
"#define c ..." that runs afoul of buggy stdlib.h that uses the
identifier c as a member of struct drand48_data.

19 years ago* bootstrap: Change translation URL.
Paul Eggert [Mon, 21 Mar 2005 22:36:41 +0000 (22:36 +0000)]
* bootstrap: Change translation URL.

19 years ago* tests/local.at (AT_COMPILE, AT_COMPILE_CXX): Don't put options
Paul Eggert [Mon, 21 Mar 2005 06:58:31 +0000 (06:58 +0000)]
* tests/local.at (AT_COMPILE, AT_COMPILE_CXX): Don't put options
after operands; POSIX says this isn't portable for the c99 command.

19 years ago(AT_COMPILE, AT_COMPILE_CXX): Don't put options
Paul Eggert [Mon, 21 Mar 2005 06:58:11 +0000 (06:58 +0000)]
(AT_COMPILE, AT_COMPILE_CXX): Don't put options
after operands; POSIX says this isn't portable for the c99 command.

19 years ago* tests/glr-regression.at (glr-regr2a.y): Try to dump core
Paul Eggert [Fri, 18 Mar 2005 20:57:37 +0000 (20:57 +0000)]
* tests/glr-regression.at (glr-regr2a.y): Try to dump core
immediately if a data overrun has occurred.

19 years ago(glr-regr2a.y): Try to dump core
Paul Eggert [Fri, 18 Mar 2005 20:57:19 +0000 (20:57 +0000)]
(glr-regr2a.y): Try to dump core
immediately if a data overrun has occurred; this may help us track
down what may be a spurious failure on MacOS.

19 years agoRespond to problems reported by twlevo@xs4all.nl.
Paul Eggert [Thu, 17 Mar 2005 23:42:57 +0000 (23:42 +0000)]
Respond to problems reported by twlevo@xs4all.nl.

19 years agoUse "trap - 0" rather than the unportable "trap 0".
Paul Eggert [Thu, 17 Mar 2005 23:41:38 +0000 (23:41 +0000)]
Use "trap - 0" rather than the unportable "trap 0".

19 years agoRegenerate.
Paul Eggert [Thu, 17 Mar 2005 19:22:00 +0000 (19:22 +0000)]
Regenerate.

19 years ago* src/vcg.h: Comment fix.
Paul Eggert [Thu, 17 Mar 2005 19:20:15 +0000 (19:20 +0000)]
* src/vcg.h: Comment fix.
* src/vcg_defaults.h: Parenthesize macro bodies to make them safe.
(G_CMAX): Change to -1 instead of INT_MAX.

19 years ago(yyparse): Omit spaces before #line.
Paul Eggert [Thu, 17 Mar 2005 19:19:44 +0000 (19:19 +0000)]
(yyparse): Omit spaces before #line.
Problem reported by twlevo@xs4all.nl.

19 years ago* src/tables.c (state_number_to_vector_number): Put it inside an
Paul Eggert [Tue, 15 Mar 2005 23:53:47 +0000 (23:53 +0000)]
* src/tables.c (state_number_to_vector_number): Put it inside an
"#if 0".

19 years ago(state_number_to_vector_number): Put it inside an
Paul Eggert [Tue, 15 Mar 2005 23:53:27 +0000 (23:53 +0000)]
(state_number_to_vector_number): Put it inside an
"#if 0", since it's not currently used.

19 years ago* src/output.c (escaped_output): Renamed from
Paul Eggert [Mon, 7 Mar 2005 06:41:39 +0000 (06:41 +0000)]
* src/output.c (escaped_output): Renamed from
escaped_file_name_output, since we now use it for symbol tags as
well.  All uses changed.
(symbol_destructors_output, symbol_printers_output):
Escape symbol tags too.
Problem reported by Matyas Forstner in
<http://lists.gnu.org/archive/html/bug-bison/2005-03/msg00009.html>.

* src/muscle_tab.c (muscle_code_grow): Don't quote numbers; it's
not needed.
* src/output.c (user_actions_output, token_definitions_output,
symbol_destructors_output, symbol_printers_output): Likewise.
* src/reader.c (prologue_augment): Likewise.
* src/scan-gram.l (handle_action_dollar, handle_action_at): Likewise.

19 years ago(output_edge): Don't quote linestyle arg.
Paul Eggert [Mon, 7 Mar 2005 06:35:31 +0000 (06:35 +0000)]
(output_edge): Don't quote linestyle arg.

19 years ago* doc/bison.texinfo (Semantic Tokens): Fix scoping problem in
Paul Eggert [Tue, 1 Mar 2005 00:41:58 +0000 (00:41 +0000)]
* doc/bison.texinfo (Semantic Tokens): Fix scoping problem in
example, reported by Derek M Jones.

19 years ago(Semantic Tokens): Fix scoping problem in
Paul Eggert [Tue, 1 Mar 2005 00:41:33 +0000 (00:41 +0000)]
(Semantic Tokens): Fix scoping problem in
example, reported by Derek M Jones.  Also, make the example even
more outrageous, to better illustrate how bad the problem is.

19 years ago* doc/bison.texinfo (Mfcalc Symtab): Correct the prototype for putsym.
Paul Eggert [Thu, 24 Feb 2005 17:24:23 +0000 (17:24 +0000)]
* doc/bison.texinfo (Mfcalc Symtab): Correct the prototype for putsym.

19 years ago(Mfcalc Symtab): Correct the prototype for putsym.
Paul Eggert [Thu, 24 Feb 2005 17:23:57 +0000 (17:23 +0000)]
(Mfcalc Symtab): Correct the prototype for putsym.

19 years ago* doc/bison.texinfo: minor typo fixes
Paul Eggert [Wed, 23 Feb 2005 09:15:27 +0000 (09:15 +0000)]
* doc/bison.texinfo: minor typo fixes

19 years ago(Language and Grammar): some -> same
Paul Eggert [Wed, 23 Feb 2005 09:15:09 +0000 (09:15 +0000)]
(Language and Grammar): some -> same
(Epilogue): int he -> in the

19 years agoFix $ in test names.
Paul Eggert [Tue, 8 Feb 2005 00:37:43 +0000 (00:37 +0000)]
Fix $ in test names.

19 years agoRenamed from "Invalid \$n", to work around an Autoconf bug with dollar
Paul Eggert [Mon, 7 Feb 2005 23:14:55 +0000 (23:14 +0000)]
Renamed from "Invalid \$n", to work around an Autoconf bug with dollar
signs in test names.

19 years ago(Improper handling of embedded actions and dollar(-N) in GLR parsers):
Paul Eggert [Mon, 7 Feb 2005 23:14:22 +0000 (23:14 +0000)]
(Improper handling of embedded actions and dollar(-N) in GLR parsers):
Renamed from "Improper handling of embedded actions and $-N in GLR
parsers", work around an Autoconf bug with dollar signs in test names.

19 years ago* src/vcg.c (output_graph): G_VIEW -> normal_view.
Paul Eggert [Fri, 28 Jan 2005 22:07:09 +0000 (22:07 +0000)]
* src/vcg.c (output_graph): G_VIEW -> normal_view.

19 years ago(output_graph): G_VIEW -> normal_view in case someone
Paul Eggert [Fri, 28 Jan 2005 22:06:55 +0000 (22:06 +0000)]
(output_graph): G_VIEW -> normal_view in case someone
wants to redefine G_VIEW.

19 years ago* src/vcg.c (get_view_str): Remove case for normal_view.
Paul Eggert [Thu, 27 Jan 2005 22:03:21 +0000 (22:03 +0000)]
* src/vcg.c (get_view_str): Remove case for normal_view.

19 years ago(get_view_str): Remove case for normal_view.
Paul Eggert [Thu, 27 Jan 2005 22:03:07 +0000 (22:03 +0000)]
(get_view_str): Remove case for normal_view.

19 years ago* configure.ac (O0CFLAGS, O0CXXFLAGS): Fix quoting bug.
Paul Eggert [Mon, 24 Jan 2005 23:48:11 +0000 (23:48 +0000)]
* configure.ac (O0CFLAGS, O0CXXFLAGS): Fix quoting bug.

19 years ago(O0CFLAGS, O0CXXFLAGS): Fix quoting bug.
Paul Eggert [Mon, 24 Jan 2005 23:47:49 +0000 (23:47 +0000)]
(O0CFLAGS, O0CXXFLAGS): Fix quoting bug.

19 years ago* doc/bison.texinfo: Change @dircategory from "GNU programming
Paul Eggert [Mon, 24 Jan 2005 23:26:33 +0000 (23:26 +0000)]
* doc/bison.texinfo: Change @dircategory from "GNU programming
tools" to "Software development".

19 years agoChange @dircategory from "GNU programming tools" to "Software development".
Paul Eggert [Mon, 24 Jan 2005 23:26:17 +0000 (23:26 +0000)]
Change @dircategory from "GNU programming tools" to "Software development".

19 years ago* tests/c++.at (AT_CHECK_DOXYGEN): Don't use options after operands.
Paul Eggert [Sun, 23 Jan 2005 08:38:33 +0000 (08:38 +0000)]
* tests/c++.at (AT_CHECK_DOXYGEN): Don't use options after operands.

19 years ago(AT_CHECK_DOXYGEN): Don't use options after operands.
Paul Eggert [Sun, 23 Jan 2005 08:37:35 +0000 (08:37 +0000)]
(AT_CHECK_DOXYGEN): Don't use options after operands.

19 years agoRegenerate.
Paul Eggert [Fri, 21 Jan 2005 19:29:25 +0000 (19:29 +0000)]
Regenerate.

19 years ago* data/yacc.c (YYCOPY, yystpcpy, yyparse): Remove "register".
Paul Eggert [Fri, 21 Jan 2005 19:12:51 +0000 (19:12 +0000)]
* data/yacc.c (YYCOPY, yystpcpy, yyparse): Remove "register".

19 years ago(YYCOPY, yystpcpy, yyparse): Remove "register".
Paul Eggert [Fri, 21 Jan 2005 19:12:32 +0000 (19:12 +0000)]
(YYCOPY, yystpcpy, yyparse): Remove "register".

19 years agoRegenerate.
Paul Eggert [Mon, 17 Jan 2005 09:35:41 +0000 (09:35 +0000)]
Regenerate.

19 years ago* data/glr.c (yyuserAction): Add "default: break;" case to pacify
Paul Eggert [Mon, 17 Jan 2005 09:33:57 +0000 (09:33 +0000)]
* data/glr.c (yyuserAction): Add "default: break;" case to pacify
gcc -Wswitch-default.
* data/lalr1.cc (yy::]b4_parser_class_name[::parse): Likewise.
* data/yacc.c (yyparse): Likewise.

19 years ago* src/system.h (OUTPUT_EXT, TAB_EXT): Define only if not defined
Paul Eggert [Thu, 13 Jan 2005 00:13:37 +0000 (00:13 +0000)]
* src/system.h (OUTPUT_EXT, TAB_EXT): Define only if not defined
already.  Let config.h define any nonstandard values.

19 years ago(OUTPUT_EXT, TAB_EXT): Define only if not defined
Paul Eggert [Thu, 13 Jan 2005 00:13:21 +0000 (00:13 +0000)]
(OUTPUT_EXT, TAB_EXT): Define only if not defined
already.  Let config.h define any nonstandard values.

19 years ago* tests/calc.at (_AT_DATA_CALC_Y): Use alarm (100), not alarm (10).
Paul Eggert [Mon, 10 Jan 2005 18:22:30 +0000 (18:22 +0000)]
* tests/calc.at (_AT_DATA_CALC_Y): Use alarm (100), not alarm (10).

19 years ago(_AT_DATA_CALC_Y): Use alarm (100), not alarm (10).
Paul Eggert [Mon, 10 Jan 2005 18:22:11 +0000 (18:22 +0000)]
(_AT_DATA_CALC_Y): Use alarm (100), not alarm (10).

19 years ago* data/yacc.c (yyparse): Pacify non-GCC compilers about yyerrorlab
Paul Eggert [Sat, 8 Jan 2005 05:22:36 +0000 (05:22 +0000)]
* data/yacc.c (yyparse): Pacify non-GCC compilers about yyerrorlab
being defined and not used.
* data/lalr1.cc (yyparse): Likewise.
Use "if (false)" rather than "if (0)".

19 years ago(yyparse): Pacify non-GCC compilers about yyerrorlab
Paul Eggert [Sat, 8 Jan 2005 05:22:19 +0000 (05:22 +0000)]
(yyparse): Pacify non-GCC compilers about yyerrorlab
being defined and not used.
Use "if (false)" rather than "if (0)".

19 years ago(yyparse): Pacify non-GCC compilers about yyerrorlab
Paul Eggert [Sat, 8 Jan 2005 05:21:46 +0000 (05:21 +0000)]
(yyparse): Pacify non-GCC compilers about yyerrorlab
being defined and not used.

19 years agoTODO: Mention that we should allow NUL bytes in tokens.
Paul Eggert [Wed, 5 Jan 2005 21:35:46 +0000 (21:35 +0000)]
TODO: Mention that we should allow NUL bytes in tokens.

19 years agoMention that we should support NUL bytes in tokens.
Paul Eggert [Wed, 5 Jan 2005 21:35:08 +0000 (21:35 +0000)]
Mention that we should support NUL bytes in tokens.

19 years ago* src/scan-skel.l (<<EOF>>): Don't close standard output.
Paul Eggert [Mon, 3 Jan 2005 07:52:46 +0000 (07:52 +0000)]
* src/scan-skel.l (<<EOF>>): Don't close standard output.

19 years ago(<<EOF>>): Don't close standard output.
Paul Eggert [Mon, 3 Jan 2005 07:52:31 +0000 (07:52 +0000)]
(<<EOF>>): Don't close standard output.
Problem reported by Hans Aberg.

19 years agoFix bug when stdout is closed. Update copyright to 2005.
Paul Eggert [Sat, 1 Jan 2005 09:28:00 +0000 (09:28 +0000)]
Fix bug when stdout is closed.  Update copyright to 2005.

19 years ago(version): Happy new year; update overall
Paul Eggert [Sat, 1 Jan 2005 09:27:38 +0000 (09:27 +0000)]
(version): Happy new year; update overall
program copyright date from 2004 to 2005.

19 years ago(AT_CHECK_OUTPUT): New arg SHELLIO.
Paul Eggert [Sat, 1 Jan 2005 09:23:41 +0000 (09:23 +0000)]
(AT_CHECK_OUTPUT): New arg SHELLIO.
(Output file names.): Add a test for the case when standard output
is closed.

19 years ago("@output ".*\n): Don't close standard output.
Paul Eggert [Sat, 1 Jan 2005 09:23:16 +0000 (09:23 +0000)]
("@output ".*\n): Don't close standard output.

19 years ago* doc/bison.texinfo (@copying): Update FDL version number to 1.2,
Paul Eggert [Sun, 26 Dec 2004 07:26:32 +0000 (07:26 +0000)]
* doc/bison.texinfo (@copying): Update FDL version number to 1.2,
to fix an oversight in the Bison 2.0 manual.

19 years agoUpdate FDL license revision to 1.2.
Paul Eggert [Sun, 26 Dec 2004 07:25:05 +0000 (07:25 +0000)]
Update FDL license revision to 1.2.

19 years agoBump version number to 2.0a.
Paul Eggert [Sun, 26 Dec 2004 06:50:35 +0000 (06:50 +0000)]
Bump version number to 2.0a.

19 years agoFix changelog entry for configure.ac. BISON-2_0
Paul Eggert [Sun, 26 Dec 2004 06:22:17 +0000 (06:22 +0000)]
Fix changelog entry for configure.ac.

19 years ago* tests/torture.at (Exploding the Stack Size with Alloca): Set
Paul Eggert [Sun, 26 Dec 2004 06:13:31 +0000 (06:13 +0000)]
* tests/torture.at (Exploding the Stack Size with Alloca): Set
YYSTACK_USE_ALLOCA to 1 if __GNUC__ or alloca are defined;
otherwise, we're not testing alloca.  Unfortunately there's no
simple way to consult HAVE_ALLOCA here.

(This made it into 2.0.)

19 years ago(Exploding the Stack Size with Alloca): Set
Paul Eggert [Sun, 26 Dec 2004 06:12:18 +0000 (06:12 +0000)]
(Exploding the Stack Size with Alloca): Set
YYSTACK_USE_ALLOCA to 1 if __GNUC__ or alloca are defined;
otherwise, we're not testing alloca.  Unfortunately there's no
simple way to consult HAVE_ALLOCA here.

19 years agoRegenerate.
Paul Eggert [Sun, 26 Dec 2004 05:51:10 +0000 (05:51 +0000)]
Regenerate.

19 years agoVersion 2.0.
Paul Eggert [Sun, 26 Dec 2004 05:50:28 +0000 (05:50 +0000)]
Version 2.0.

19 years agoReformat news for version 2.0.
Paul Eggert [Sun, 26 Dec 2004 05:49:52 +0000 (05:49 +0000)]
Reformat news for version 2.0.

19 years ago(AC_INIT): Bump version to 2.0.
Paul Eggert [Sun, 26 Dec 2004 05:49:16 +0000 (05:49 +0000)]
(AC_INIT): Bump version to 2.0.

19 years ago(yydestruct_): Pacify unused variable warning for yymsg, too.
Paul Eggert [Sun, 26 Dec 2004 05:42:27 +0000 (05:42 +0000)]
(yydestruct_): Pacify unused variable warning for yymsg, too.

19 years ago(new_itemsets): Use memset rather than zeroing by hand. This avoids a
Paul Eggert [Sun, 26 Dec 2004 05:26:30 +0000 (05:26 +0000)]
(new_itemsets): Use memset rather than zeroing by hand.  This avoids a
warning about comparing int to size_t when GCC warnings are enabled.

19 years ago* NEWS: Bison-generated parsers no longer default to using the
Paul Eggert [Wed, 22 Dec 2004 21:19:47 +0000 (21:19 +0000)]
* NEWS: Bison-generated parsers no longer default to using the
alloca function (when available) to extend the parser stack, due
to widespread problems in unchecked stack-overflow detection.
* data/glr.c (YYMAXDEPTH): Remove undef when zero.  It's the user's
responsibility to set it to a positive value.  This lets the user
specify a value that is not a preprocessor constant.
* data/yacc.c (YYMAXDEPTH): Likewise.
(YYSTACK_ALLOC): Define only if YYSTACK_USE_ALLOCA is nonzero.
* doc/bison.texinfo (Stack Overflow): YYMAXDEPTH no longer needs
to be a compile-time constant.  However, explain the constraints on it.
Also, explain the constraints on YYINITDEPTH.
(Table of Symbols): Explain that alloca is no longer the default.
Explain the user's responsibility if they define YYSTACK_USE_ALLOCA
to 1.

19 years ago* doc/bison.texinfo (Location Default Action): Mention that n must be zero when k is.
Paul Eggert [Wed, 22 Dec 2004 18:28:26 +0000 (18:28 +0000)]
* doc/bison.texinfo (Location Default Action): Mention that n must be zero when k is.

19 years ago(Location Default Action): Mention that n must be zero when k is zero.
Paul Eggert [Wed, 22 Dec 2004 18:26:37 +0000 (18:26 +0000)]
(Location Default Action): Mention that n must be zero when k is zero.

19 years ago* data/lalr1.cc (parser::token_number_type, parser::rhs_number_type)
Akim Demaille [Wed, 22 Dec 2004 10:06:15 +0000 (10:06 +0000)]
* data/lalr1.cc (parser::token_number_type, parser::rhs_number_type)
(parser::state_type, parser::semantic_type, parser::location_type):
Private, not public.
(parser::parse): Return ints, not bool.
Returning a bool introduces a problem: 0 corresponds to false, and
it seems weird to return false on success.  Returning true changes
the conventions for yyparse.
Alternatively we could return void and send an exception.
There is no clear consensus (yet?).
(state_stack, semantic_stack, location_stack): Rename as...
(state_stack_type, semantic_stack_type, location_stack_type): these.
Private, not public.
* tests/c++.at: New.
* tests/testsuite.at, tests/Makefile.am: Adjust.

19 years ago* data/lalr1.cc (parser::parse): Return a bool instead of an int.
Akim Demaille [Tue, 21 Dec 2004 12:49:39 +0000 (12:49 +0000)]
* data/lalr1.cc (parser::parse): Return a bool instead of an int.

19 years agoDon't impose std::string for filenames.
Akim Demaille [Tue, 21 Dec 2004 12:26:56 +0000 (12:26 +0000)]
Don't impose std::string for filenames.
* data/lalr1.cc (b4_filename_type): New.
(position::filename): Use it.
(parser.hh): Move the inclusion of stack.hh and location.hh below
the user code, so that needed headers for the filename type can be
included first.
Forward declare them before the user code.
* tests/Makefile.am (check-local, installcheck-local): Pass
TESTSUITEFLAGS to the TESTSUITE.

19 years agoDon't impose std::string for filenames.
Akim Demaille [Tue, 21 Dec 2004 12:03:47 +0000 (12:03 +0000)]
Don't impose std::string for filenames.
* data/lalr1.cc (b4_filename_type): New.
(position::filename): Use it.
(parser.hh): Move the inclusion of stack.hh and location.hh below
the user code, so that needed headers for the filename type can be
included first.

19 years agoUse more STL like names: my_class instead of MyClass.
Akim Demaille [Mon, 20 Dec 2004 13:56:38 +0000 (13:56 +0000)]
Use more STL like names: my_class instead of MyClass.
* data/lalr1.cc (LocationStack, LocationType, RhsNumberType)
(SemanticStack, SemanticType, StateStack, StateType)
(TokenNumberType, Stack, Slice, Traits, Parser::location)
(Parser::value): Rename as...
(location_stack, location_type, rhs_number_type, semantic_stack)
(semantic_type, state_stack, state_type, token_number_type, stack)
(slice, traits, parser::yylloc, parser::yylval): these.
* tests/calc.at, tests/regression.at, tests/actions.at: Adjust.

19 years ago(YYLLOC_DEFAULT): Use GNU spacing conventions.
Paul Eggert [Mon, 20 Dec 2004 03:44:10 +0000 (03:44 +0000)]
(YYLLOC_DEFAULT): Use GNU spacing conventions.

19 years agoRemove uses of 'short int' and 'unsigned short int' in the parser generators.
Paul Eggert [Fri, 17 Dec 2004 20:29:19 +0000 (20:29 +0000)]
Remove uses of 'short int' and 'unsigned short int' in the parser generators.

* src/LR0.c (allocate_itemsets, new_itemsets, save_reductions):
Use size_t, not int or short int, to count objects.
* src/closure.c (nritemset, closure): Likewise.
* src/closure.h (nritemset, closure): Likewise.
* src/nullable.c (nullable_compute): Likewise.
* src/print.c (print_core): Likewise.
* src/print_graph.c (print_core): Likewise.
* src/state.c (state_compare, state_hash): Likewise.
* src/state.h (struct state): Likewise.
* src/tables.c (default_goto, goto_actions): Likewise.

* src/gram.h (rule_number, rule): Use int, not short int.
* src/output.c (prepare_rules): Likewise.
* src/state.h (state_number, STATE_NUMBER_MAXIMUM, transitions,
errs, reductions): Likewise.
* src/symtab.h (symbol_number, SYMBOL_NUMBER_MAXIMUM, struct symbol):
Likewise.
* src/tables.c (vector_number, tally, action_number,
ACTION_NUMBER_MINIMUM): Likewise.
* src/output.c (muscle_insert_short_int_table): Remove.

19 years ago* data/lalr1.cc: Extensive Doxygenation.
Akim Demaille [Fri, 17 Dec 2004 15:24:32 +0000 (15:24 +0000)]
* data/lalr1.cc: Extensive Doxygenation.
(error_): Rename as...
(error): this, since it is visible to the user.
Adjust callers.
(Parser::message): Now an automatic variable from...
(Parser::yyreport_syntax_error_): here.
* tests/actions.at, tests/calc.at, tests/regression.at: Adjust to
Parser::error.
* tests/input.at: Escape $.

19 years agoRegenerate.
Paul Eggert [Thu, 16 Dec 2004 20:42:40 +0000 (20:42 +0000)]
Regenerate.

19 years ago* data/glr.c (b4_lhs_value, b4_rhs_value, b4_rhs-location):
Paul Eggert [Thu, 16 Dec 2004 20:41:54 +0000 (20:41 +0000)]
* data/glr.c (b4_lhs_value, b4_rhs_value, b4_rhs-location):
Parenthesize rhs to avoid obscure problems with mistakes like
"foo$$bar = foo$1bar;".  Problem reported by twlevo at xs4all.
* data/lalr1.cc (b4_lhs_value, b4_rhs_value, b4_lhs_location,
b4_rhs_location): Likewise.
* data/yacc.c (b4_lhs_value, b4_rhs_value, b4_lhs_location,
b4_rhs_location): Likewise.

19 years ago* data/lalr1.cc (yyreport_syntax_error_): Catch up with glr.c and
Akim Demaille [Thu, 16 Dec 2004 14:39:42 +0000 (14:39 +0000)]
* data/lalr1.cc (yyreport_syntax_error_): Catch up with glr.c and
yacc.c: be sure to stay within yycheck_.
* tests/actions.at: Re-enable C++ tests.

19 years ago* src/print_graph.c (print_graph): Remove layoutalgorithm uses for
Akim Demaille [Thu, 16 Dec 2004 09:09:56 +0000 (09:09 +0000)]
* src/print_graph.c (print_graph): Remove layoutalgorithm uses for
real.

19 years agoUse #define to handle the %name-prefix.
Akim Demaille [Thu, 16 Dec 2004 09:06:08 +0000 (09:06 +0000)]
Use #define to handle the %name-prefix.
* data/glr.c, data/yacc.c: Comment changes.
* data/lalr1.cc (yylex): Use #define to select the name of yylex,
so that one can refer to yylex in the parser file, and have it
renamed, as is the case with other skeletons.

19 years agoMove lalr1.cc internals into yy*.
Akim Demaille [Thu, 16 Dec 2004 08:48:54 +0000 (08:48 +0000)]
Move lalr1.cc internals into yy*.
* data/lalr1.cc (semantic_stack_, location_stack_, state_stack_)
(semantic_stack_, location_stack_, pact_, pact_ninf_, defact_)
(pgoto_, defgoto_, table_, table_ninf_, check_, stos_, r1_, r2_)
(name_, rhs_, prhs_, rline_, token_number_, eof_, last_, nnts_)
(empty_, final_, terror_, errcode_, ntokens_)
(user_token_number_max_, undef_token_, n_, len_, state_, nerrs_)
(looka_, ilooka_, error_range_, nerrs_):
Rename as...
(yysemantic_stack_, yylocation_stack_, yystate_stack_)
(yysemantic_stack_, yylocation_stack_, yypact_, yypact_ninf_)
(yydefact_, yypgoto_, yydefgoto_, yytable_, yytable_ninf_)
(yycheck_, yystos_, yyr1_, yyr2_, yyname_, yyrhs_, yyprhs_)
(yyrline_, yytoken_number_, yyeof_, yylast_, yynnts_, yyempty_)
(yyfinal_, yyterror_, yyerrcode_, yyntokens_)
(yyuser_token_number_max_, yyundef_token_, yyn_, yylen_, yystate_)
(yynerrs_, yylooka_, yyilooka_, yyerror_range_, yynerrs_):
these.