]> git.saurik.com Git - bison.git/log
bison.git
21 years agoAdd support for rules that do not have trailing semicolons, as
Paul Eggert [Sat, 7 Dec 2002 08:09:17 +0000 (08:09 +0000)] 
Add support for rules that do not have trailing semicolons, as
POSIX requires.  Improve the quality of locations in Bison
diagnostics.

Remove duplicate decl of current_file.
Fix minor promotion problem in templates.
Fix Debian Bug 102878.

21 years ago(Invalid inputs): No longer `expecting ";"
Paul Eggert [Sat, 7 Dec 2002 06:16:58 +0000 (06:16 +0000)] 
(Invalid inputs): No longer `expecting ";"
or "|"' now that so many other tokens are allowed by the new grammar.

21 years ago(Useless Rules, Reduced Automaton, Underivable Rules): Adjust reported
Paul Eggert [Sat, 7 Dec 2002 06:16:30 +0000 (06:16 +0000)] 
(Useless Rules, Reduced Automaton, Underivable Rules): Adjust reported
locations to match the more-precise results now expected.

21 years ago(Invalid $n, Invalid @n, Type Clashes):
Paul Eggert [Sat, 7 Dec 2002 06:15:55 +0000 (06:15 +0000)] 
(Invalid $n, Invalid @n, Type Clashes):
Adjust reported locations to match the more-precise
results now expected.

21 years ago(S/R in initial, Defaulted Conflicted Reduction):
Paul Eggert [Sat, 7 Dec 2002 06:15:18 +0000 (06:15 +0000)] 
(S/R in initial, Defaulted Conflicted Reduction):
Adjust reported locations to match the more-precise
results now expected.

21 years agoInclude "files.h".
Paul Eggert [Sat, 7 Dec 2002 06:14:27 +0000 (06:14 +0000)] 
Include "files.h".
(YY_USER_INIT): Initialize scanner_cursor instead
of *loc.
(STEP): Remove.  No longer needed, now that adjust_location does
the work.  All uses removed.
(scanner_cursor): New var.
(adjust_location): Renamed from extend_location.  It now sets
*loc and adjusts the scanner cursor.  All uses changed.
Don't bother testing for CR.
(handle_syncline): Remove location arg; now updates scanner cursor.
All callers changed.
(unexpected_end_of_file): Now accepts start boundary of token or
comment, not location.  All callers changed.  Update scanner cursor,
not the location.
(SC_AFTER_IDENTIFIER): New state.
(context_state): Renamed from c_context.  All uses changed.
(id_loc, code_start, token_start): New local vars.
(<INITIAL,SC_AFTER_IDENTIFIER>): New initial context.  Move all
processing of Yacc white space and equivalents here.
(<INITIAL>{id}): Save id_loc.  Begin state SC_AFTER_IDENTIFIER
instead of returning ID immediately, since we need to search for
a subsequent colon.
(<INITIAL>"'", "\""): Save token_start.
(<INITIAL>"%{", "{", "%%"): Save code_start.
(<SC_AFTER_IDENTIFIER>): New state, looking for a colon.
(<SC_YACC_COMMENT>, <SC_COMMENT>, <SC_LINE_COMMENT>):
BEGIN context_state at end, not INITIAL.
(<SC_ESCAPED_STRING>"\"", <SC_ESCAPED_CHARACTER>"'",
<SC_BRACED_CODE>"}", <SC_PROLOGUE>"%}", <SC_EPILOGUE><<EOF>>):
Return correct token start.
(<SC_BRACED_CODE,SC_PROLOGUE,SC_EPILOGUE>): Save start boundary when
the start of a character, string or multiline comment is found.

21 years ago(nonterminals_reduce): Use warn_at rather than rolling our own.
Paul Eggert [Sat, 7 Dec 2002 06:12:48 +0000 (06:12 +0000)] 
(nonterminals_reduce): Use warn_at rather than rolling our own.

21 years agoInclude location.h.
Paul Eggert [Sat, 7 Dec 2002 06:11:11 +0000 (06:11 +0000)] 
Include location.h.
(scanner_cursor): New decl.

21 years agoAdjust to new location_t layout.
Paul Eggert [Sat, 7 Dec 2002 06:02:10 +0000 (06:02 +0000)] 
Adjust to new location_t layout.

21 years ago(lloc_default): New function, which handles
Paul Eggert [Sat, 7 Dec 2002 06:01:20 +0000 (06:01 +0000)] 
(lloc_default): New function, which handles
empty locations more accurately.
(YYLLOC_DEFAULT): Use it.
(%token COLON): Remove.
(%token ID_COLON): New token.
(rules): Use it.
(declarations, rules): Remove trailing semicolon.
(declaration, rules_or_grammar_declaration):
Allow empty (";") declaration.
(symbol_def): Remove empty actions; no longer needed.
(rules_or_grammar_declaration): Remove trailing semicolon.
(semi_colon.opt): Remove.

21 years agoDo not include <quotearg.h>; no longer needed.
Paul Eggert [Sat, 7 Dec 2002 05:58:38 +0000 (05:58 +0000)] 
Do not include <quotearg.h>; no longer needed.
(boundary): New type.
(location_t): Use it.  This allows locations to span file boundaries.
All member uses changed: file -> start.file or end.file (as needed),
first_line -> start.line, first_column -> start.column,
last_line -> end.line, last_column -> end.column.
(equal_boundaries): New function.
(LOCATION_RESET, LOCATION_STEP): Remove.
(LOCATION_PRINT): Remove.  All callers changed to use location_print.
(empty_location): Now const.
(location_print): New decl.

21 years ago* src/location.c: Include <quotearg.h>.
Paul Eggert [Sat, 7 Dec 2002 05:57:32 +0000 (05:57 +0000)] 
* src/location.c: Include <quotearg.h>.
(empty_location): Now const.
(location_print): New function.  Follow the recommendation of the
GNU Coding Standards for locations that span file boundaries.

21 years agoLOCATION_PRINT -> location_print
Paul Eggert [Sat, 7 Dec 2002 05:55:28 +0000 (05:55 +0000)] 
LOCATION_PRINT -> location_print

21 years ago(current_file): Remove duplicate decl;
Paul Eggert [Sat, 7 Dec 2002 05:54:29 +0000 (05:54 +0000)] 
(current_file): Remove duplicate decl;
current_file is now owned by files.h.

21 years agoInclude files.h. LOCATION_PRINT -> location_print.
Paul Eggert [Sat, 7 Dec 2002 05:53:51 +0000 (05:53 +0000)] 
Include files.h.  LOCATION_PRINT -> location_print.

21 years ago(Table of Symbols): YYERROR_VERBOSE should
Paul Eggert [Sat, 7 Dec 2002 05:50:45 +0000 (05:50 +0000)] 
(Table of Symbols): YYERROR_VERBOSE should
be #defined in the prologue, not in the Bison declarations.
This fixes Debian Bug 102878, reported by Shaul Karl.

21 years ago(yy_reduce_print): Don't assume that yyrline[yyrule] promotes to int;
Paul Eggert [Sat, 7 Dec 2002 05:46:30 +0000 (05:46 +0000)] 
(yy_reduce_print): Don't assume that yyrline[yyrule] promotes to int;
it might be unsigned int.

21 years ago(yy_reduce_print): Don't assume that yyrline[yyrule]
Paul Eggert [Sat, 7 Dec 2002 05:45:46 +0000 (05:45 +0000)] 
(yy_reduce_print): Don't assume that yyrline[yyrule]
promotes to int; it might be unsigned int.

22 years agoAdd strtoul.c
Paul Eggert [Mon, 2 Dec 2002 18:20:30 +0000 (18:20 +0000)] 
Add strtoul.c
In src/scan-gram.l, move helper function definitions to epilogue.

22 years ago(AC_REPLACE_FUNCS): Add strtoul.
Paul Eggert [Mon, 2 Dec 2002 18:19:51 +0000 (18:19 +0000)] 
(AC_REPLACE_FUNCS): Add strtoul.

22 years agoNew file, from gnulib.
Paul Eggert [Mon, 2 Dec 2002 18:19:30 +0000 (18:19 +0000)] 
New file, from gnulib.

22 years ago(no_cr_read, extend_location): Move to epilogue,
Paul Eggert [Sun, 1 Dec 2002 02:37:56 +0000 (02:37 +0000)] 
(no_cr_read, extend_location): Move to epilogue,
and put only a forward declaration in the prologue.  This is for
consistency with the other scanner helper functions.

22 years agoType clashes now generate warnings, not errors, since it
Paul Eggert [Sat, 30 Nov 2002 09:52:42 +0000 (09:52 +0000)] 
Type clashes now generate warnings, not errors, since it
appears that POSIX may allow some grammars with type clashes.

22 years ago(grammar_current_rule_check): Warn about
Paul Eggert [Sat, 30 Nov 2002 09:52:11 +0000 (09:52 +0000)] 
(grammar_current_rule_check): Warn about
type clashes instead of complaining.

22 years ago(Type Clashes): Expect warnings, not complaints.
Paul Eggert [Sat, 30 Nov 2002 09:51:50 +0000 (09:51 +0000)] 
(Type Clashes): Expect warnings, not complaints.

22 years agofund -> found
Paul Eggert [Sat, 30 Nov 2002 09:25:06 +0000 (09:25 +0000)] 
fund -> found

22 years agoAdd Yacc Library.
Paul Eggert [Sat, 30 Nov 2002 09:20:52 +0000 (09:20 +0000)] 
Add Yacc Library.
gram_error is static.
yylex and yyerror must be declared.

22 years agoDescribe Yacc library, lex-param and parse-param changes.
Paul Eggert [Sat, 30 Nov 2002 09:18:34 +0000 (09:18 +0000)] 
Describe Yacc library, lex-param and parse-param changes.

22 years ago(gram_error): Now static. Add static decl.
Paul Eggert [Sat, 30 Nov 2002 09:16:54 +0000 (09:16 +0000)] 
(gram_error): Now static.  Add static decl.
(print_token_value): Omit parameter names from forward decl,
for consistency.

22 years ago(gram_error): Remove decl.
Paul Eggert [Sat, 30 Nov 2002 09:16:32 +0000 (09:16 +0000)] 
(gram_error): Remove decl.

22 years ago(Yacc Library): New node. Regenerate top menu.
Paul Eggert [Sat, 30 Nov 2002 09:11:30 +0000 (09:11 +0000)] 
(Yacc Library): New node.  Regenerate top menu.

22 years ago(lib_LIBRARIES, liby_a_SOURCES): New macros.
Paul Eggert [Sat, 30 Nov 2002 09:10:55 +0000 (09:10 +0000)] 
(lib_LIBRARIES, liby_a_SOURCES): New macros.

22 years agolib/main.c, lib/yyerror.c: New files.
Paul Eggert [Sat, 30 Nov 2002 09:10:20 +0000 (09:10 +0000)] 
lib/main.c, lib/yyerror.c: New files.

22 years agoEmphasize that yylex and yyerror must be declared before being used.
Paul Eggert [Sat, 30 Nov 2002 07:42:37 +0000 (07:42 +0000)] 
Emphasize that yylex and yyerror must be declared before being used.
E.g., one should typically declare them in the prologue.  Use GNU
coding style in examples.  Put "const" consistently after the type it
modifies.  Mention that C99 supports "inline".  Mention that yyerror
traditionally returns "int".

22 years ago[a-f] -> [abcdef], so that we don't assume the C locale.
Paul Eggert [Fri, 29 Nov 2002 09:03:16 +0000 (09:03 +0000)] 
[a-f] -> [abcdef], so that we don't assume the C locale.

22 years ago%parse-param and %lex-param now take just one argument, the
Paul Eggert [Fri, 29 Nov 2002 08:45:33 +0000 (08:45 +0000)] 
%parse-param and %lex-param now take just one argument, the
declaration; the argument name is deduced from the declaration.

22 years ago(Simple LALR Calculator): Adopt new convention for %parse-param
Paul Eggert [Fri, 29 Nov 2002 08:45:14 +0000 (08:45 +0000)] 
(Simple LALR Calculator): Adopt new convention for %parse-param
and %lex-param.

22 years ago"," now elicits a warning, rather than being
Paul Eggert [Fri, 29 Nov 2002 08:44:40 +0000 (08:44 +0000)] 
"," now elicits a warning, rather than being
a token; this is more compatible with byacc.

22 years ago(add_param): New function.
Paul Eggert [Fri, 29 Nov 2002 08:44:04 +0000 (08:44 +0000)] 
(add_param): New function.
(COMMA): Remove.
(declaration): Implement new rule for %parse-param and %lex-param.

22 years ago(Parser Function, Pure Calling, Error Reporting, Table of Symbols):
Paul Eggert [Fri, 29 Nov 2002 08:43:12 +0000 (08:43 +0000)] 
(Parser Function, Pure Calling, Error Reporting, Table of Symbols):
%parse-param and %lex-param now take just one argument, the
declaration; the argument name is deduced from the declaration.

22 years ago(reader): Remove gram_control; it wasn't being used.
Paul Eggert [Fri, 29 Nov 2002 05:59:59 +0000 (05:59 +0000)] 
(reader): Remove gram_control; it wasn't being used.

22 years agoSync with gnulib.
Paul Eggert [Thu, 28 Nov 2002 00:42:28 +0000 (00:42 +0000)] 
Sync with gnulib.

22 years agoRename identifiers to avoid real and potential collisions.
Paul Eggert [Wed, 27 Nov 2002 18:36:41 +0000 (18:36 +0000)] 
Rename identifiers to avoid real and potential collisions.

22 years ago(STEP): Renamed from YY_STEP. All uses changed.
Paul Eggert [Wed, 27 Nov 2002 18:34:14 +0000 (18:34 +0000)] 
(STEP): Renamed from YY_STEP.  All uses changed.
(STRING_GROW): Renamed from YY_OBS_GROW.  All uses changed.
(STRING_FINISH): Renamed from YY_OBS_FINISH.  All uses changed.
(STRING_FREE): Renamed from YY_OBS_FREE.  All uses changed.

22 years ago(struct gram_control_s, gram_control_t): Remove.
Paul Eggert [Wed, 27 Nov 2002 18:33:42 +0000 (18:33 +0000)] 
(struct gram_control_s, gram_control_t): Remove.
(YY_DECL): Don't use "yy" at start of local variables.
All uses changed, e.g., yylloc -> loc.

22 years ago(print_token_value): Renamed from yyprint.
Paul Eggert [Wed, 27 Nov 2002 18:33:18 +0000 (18:33 +0000)] 
(print_token_value): Renamed from yyprint.
All uses changed.
(YYPARSE_PARAM, YYLEX_PARAM, yycontrol): Remove.  All uses changed.
The name "yycontrol" violates the name space rules, and this stuff
wasn't being used anyway.
(input): Remove action; this stuff wasn't being used.
(gram_error): Rename local variable yylloc -> loc.

22 years agoyyprint -> print_token_value
Paul Eggert [Wed, 27 Nov 2002 18:32:12 +0000 (18:32 +0000)] 
yyprint -> print_token_value

22 years ago(_AT_CHECK_PRINTER_AND_DESTRUCTOR): yyout -> yyoutput,
Paul Eggert [Wed, 27 Nov 2002 18:31:27 +0000 (18:31 +0000)] 
(_AT_CHECK_PRINTER_AND_DESTRUCTOR): yyout -> yyoutput,
to avoid collision with lex macro described by Bruce Lilly in
<http://mail.gnu.org/pipermail/bug-bison/2002-November/001929.html>.

22 years ago(b4_yysymprint_generate): yyout -> yyoutput,
Paul Eggert [Wed, 27 Nov 2002 18:30:50 +0000 (18:30 +0000)] 
(b4_yysymprint_generate): yyout -> yyoutput,
to avoid collision with lex macro described by Bruce Lilly in
<http://mail.gnu.org/pipermail/bug-bison/2002-November/001929.html>.

22 years agoUpdate version to 1.75d.
Paul Eggert [Mon, 25 Nov 2002 08:21:40 +0000 (08:21 +0000)] 
Update version to 1.75d.

22 years agoRegenerate.
Paul Eggert [Mon, 25 Nov 2002 08:05:09 +0000 (08:05 +0000)] 
Regenerate.

22 years agoVersion 1.75c.
Paul Eggert [Mon, 25 Nov 2002 07:56:44 +0000 (07:56 +0000)] 
Version 1.75c.

22 years agoSync with gnulib.
Paul Eggert [Mon, 25 Nov 2002 07:50:25 +0000 (07:50 +0000)] 
Sync with gnulib.

22 years ago(Actions after errors): Use an output format
Paul Eggert [Mon, 25 Nov 2002 07:36:54 +0000 (07:36 +0000)] 
(Actions after errors): Use an output format
more similar to that of the Printers and Destructors test.
Test the position of the ';' token too.
(Printers and Destructors): Likewise.
(Printers and Destructors: %glr-parser): Remove for now, to avoid
unnecessarily alarming people when the test fails.

22 years ago(yyerrlab1): Move this label down, so that the
Paul Eggert [Mon, 25 Nov 2002 06:42:10 +0000 (06:42 +0000)] 
(yyerrlab1): Move this label down, so that the
parser does not discard the lookahead token if the user code
invokes YYERROR.  This change is required for POSIX conformance.

22 years agoSync with gnulib.
Paul Eggert [Sat, 23 Nov 2002 07:25:41 +0000 (07:25 +0000)] 
Sync with gnulib.

22 years agoSync with gnulib again.
Paul Eggert [Fri, 22 Nov 2002 00:30:58 +0000 (00:30 +0000)] 
Sync with gnulib again.

22 years agoSync with gnulib.
Paul Eggert [Thu, 21 Nov 2002 19:14:24 +0000 (19:14 +0000)] 
Sync with gnulib.

22 years ago* lib/argmatch.c, lib/argmatch.h: Sync with gnulib.
Paul Eggert [Thu, 21 Nov 2002 07:37:24 +0000 (07:37 +0000)] 
* lib/argmatch.c, lib/argmatch.h: Sync with gnulib.

Avoid use of <assert.h>, as the GNU Coding Standards hint that one
should use `if (! x) abort ();' rather than `assert (x);', and
anyway it's one less thing to worry about configuring.

22 years agoSync with gnulib.
Paul Eggert [Thu, 21 Nov 2002 07:35:58 +0000 (07:35 +0000)] 
Sync with gnulib.

22 years ago(_AT_TEST_GLR_CXXTYPES): Do not include <assert.h>.
Paul Eggert [Thu, 21 Nov 2002 05:28:44 +0000 (05:28 +0000)] 
(_AT_TEST_GLR_CXXTYPES): Do not include <assert.h>.
Replace all instances of assert with abort.

22 years ago(_AT_DATA_CALC_Y): Do not include <assert.h>.
Paul Eggert [Thu, 21 Nov 2002 05:28:09 +0000 (05:28 +0000)] 
(_AT_DATA_CALC_Y): Do not include <assert.h>.
Replace all instances of assert with abort.

22 years ago(_AT_CHECK_PRINTER_AND_DESTRUCTOR): Do not include <assert.h>.
Paul Eggert [Thu, 21 Nov 2002 05:27:28 +0000 (05:27 +0000)] 
(_AT_CHECK_PRINTER_AND_DESTRUCTOR): Do not include <assert.h>.

22 years ago(get_color_str, get_textmode_str, get_shape_str,
Paul Eggert [Thu, 21 Nov 2002 05:26:41 +0000 (05:26 +0000)] 
(get_color_str, get_textmode_str, get_shape_str,
get_layoutalgorithm_str, get_decision_str, get_orientation_str,
get_node_alignement_str, get_arrow_mode_str, get_crossing_type_str,
get_view_str, get_linestyle_str, get_arrowstyle_str): Use abort rather
than assert.

22 years ago(conflict_row, pack_vector): Use abort rather than assert.
Paul Eggert [Thu, 21 Nov 2002 05:25:55 +0000 (05:25 +0000)] 
(conflict_row, pack_vector): Use abort rather than assert.
(tables_generate): Use verify rather than assert.

22 years agoDo not include <assert.h>.
Paul Eggert [Thu, 21 Nov 2002 05:24:53 +0000 (05:24 +0000)] 
Do not include <assert.h>.
(verify): New macro.

22 years ago(symbol_user_token_number_set, symbol_make_alias, symbol_pack):
Paul Eggert [Thu, 21 Nov 2002 05:23:46 +0000 (05:23 +0000)] 
(symbol_user_token_number_set, symbol_make_alias, symbol_pack):
Use abort rather than assert.

22 years ago(struniq_assert): Now returns void, and aborts if the assertion is false.
Paul Eggert [Thu, 21 Nov 2002 05:22:29 +0000 (05:22 +0000)] 
(struniq_assert): Now returns void, and aborts if the assertion is false.

22 years ago(state_new, state_free, state_transitions_set, state_reduction_find):
Paul Eggert [Thu, 21 Nov 2002 05:21:35 +0000 (05:21 +0000)] 
(state_new, state_free, state_transitions_set, state_reduction_find):
Use abort rather than assert.

22 years ago(packgram, reader): Use abort rather than assert.
Paul Eggert [Thu, 21 Nov 2002 05:20:49 +0000 (05:20 +0000)] 
(packgram, reader): Use abort rather than assert.

22 years ago(prepare_rules, token_definitions_output): Use abort rather than assert.
Paul Eggert [Thu, 21 Nov 2002 05:20:05 +0000 (05:20 +0000)] 
(prepare_rules, token_definitions_output): Use abort rather than assert.

22 years ago(nullable_compute): Use abort rather than assert.
Paul Eggert [Thu, 21 Nov 2002 05:18:57 +0000 (05:18 +0000)] 
(nullable_compute): Use abort rather than assert.

22 years ago(set_goto_map, map_goto): Use abort rather than assert.
Paul Eggert [Thu, 21 Nov 2002 05:18:08 +0000 (05:18 +0000)] 
(set_goto_map, map_goto): Use abort rather than assert.

22 years ago(trace_argmatch, report_argmatch): Use verify rather than assert.
Paul Eggert [Thu, 21 Nov 2002 05:17:21 +0000 (05:17 +0000)] 
(trace_argmatch, report_argmatch): Use verify rather than assert.

22 years ago(resolve_sr_conflict): Use abort rather than assert.
Paul Eggert [Thu, 21 Nov 2002 05:16:36 +0000 (05:16 +0000)] 
(resolve_sr_conflict): Use abort rather than assert.

22 years agoDo not include <assert.h>.
Paul Eggert [Thu, 21 Nov 2002 05:15:52 +0000 (05:15 +0000)] 
Do not include <assert.h>.
(hash_lookup, hash_get_first, hash_get_next,
hash_find_entry, hash_rehash, hash_insert): Likewise.

22 years ago(ARRAY_CARDINALITY): Do not bother to #undef.
Paul Eggert [Thu, 21 Nov 2002 05:12:27 +0000 (05:12 +0000)] 
(ARRAY_CARDINALITY): Do not bother to #undef.
(ARGMATCH_CONSTRAINT): New macro.
(ARGMATCH_ASSERT): Use it.

22 years agoDo not include <assert.h>.
Paul Eggert [Thu, 21 Nov 2002 05:11:29 +0000 (05:11 +0000)] 
Do not include <assert.h>.
(yydoAction, yyglrReduce, yysplitStack, yyresolveStates,
yyresolveAction, yyprocessOneStack): Use abort rather than assert.

22 years ago* data/glr.c (yygetLRActions): Replace `yyindex' with
Paul Eggert [Tue, 19 Nov 2002 09:33:21 +0000 (09:33 +0000)] 
* data/glr.c (yygetLRActions): Replace `yyindex' with
`yytable[yyindex]' to fix typo introduced in my 2002-11-09 patch.
This fixes the regression with Sun ONE Studio 7 cc that I reported in
<http://mail.gnu.org/pipermail/bug-bison/2002-November/001892.html>.

22 years ago(yygetLRActions): Replace `yyindex' with
Paul Eggert [Tue, 19 Nov 2002 07:35:29 +0000 (07:35 +0000)] 
(yygetLRActions): Replace `yyindex' with
`yytable[yyindex]' to fix typo introduced in my 2002-11-09 patch.
This fixes the regression with Sun ONE Studio 7 cc that I reported in
<http://mail.gnu.org/pipermail/bug-bison/2002-November/001892.html>.

22 years agoPacify Sun ONE Studio 7 lint. Also, rename "ParseError"
Paul Eggert [Mon, 18 Nov 2002 20:08:57 +0000 (20:08 +0000)] 
Pacify Sun ONE Studio 7 lint.  Also, rename "ParseError"
to "SyntaxError" for consistency with my 2002-11-15 change.

22 years ago* doc/bison.texinfo (Tracing): `yyprint' shouldn't prepend a
Akim Demaille [Mon, 18 Nov 2002 09:33:22 +0000 (09:33 +0000)] 
* doc/bison.texinfo (Tracing): `yyprint' shouldn't prepend a
space.
From Tim Van Holder.

22 years ago(_AT_DATA_CALC_Y): Make vars static instead of
Paul Eggert [Mon, 18 Nov 2002 07:52:13 +0000 (07:52 +0000)] 
(_AT_DATA_CALC_Y): Make vars static instead of
extern when possible.  Remove unused initializations.

22 years ago(YYDPRINTF, YYDSYMPRINT, YYDSYMPRINTF) [!YYDEBUG]: Do not define to
Paul Eggert [Mon, 18 Nov 2002 07:51:47 +0000 (07:51 +0000)] 
(YYDPRINTF, YYDSYMPRINT, YYDSYMPRINTF) [!YYDEBUG]: Do not define to
{}, since this breaks the common use of `YYDPRINTF ((...));' if a
single statement is desired (e.g. before `else').  Work around GCC
warnings by surrounding corresponding calls with {} if needed.
(yyhasResolvedValue): Remove unused function.
(yymergeOptionSets, yyresolvStack): Use `continue;' for empty
loop body.
(yyreportSyntaxError): Renamed from yyreportParseError.
(yyrecoverSyntaxError): Renamed from yyrecoverParseError.
All uses changed.

22 years agoReally remove it.
Akim Demaille [Sat, 16 Nov 2002 12:36:30 +0000 (12:36 +0000)] 
Really remove it.

22 years agoAugment the similarity between GLR and LALR traces.
Akim Demaille [Sat, 16 Nov 2002 12:32:27 +0000 (12:32 +0000)] 
Augment the similarity between GLR and LALR traces.
* data/yacc.c (yy_stack_print, YY_STACK_PRINT, yy_reduce_print)
(YY_REDUCE_PRINT): New.
(yyparse): Use them.
* data/glr.c (yy_reduce_print): Use YYFPRINTF, no need for
YYDPRINT here.
(yyglrReduce, yyrecoverParseError, yyparse): Don't report the
state reached after the reduction/recovery, since...
(yyparse, yyprocessOneStack): Report the state we are entering in.

22 years ago* src/getargs.h, src/getargs.c (trace_e, trace_args, trace_types):
Akim Demaille [Sat, 16 Nov 2002 12:31:36 +0000 (12:31 +0000)] 
* src/getargs.h, src/getargs.c (trace_e, trace_args, trace_types):
Add support for --trace=skeleton.
* src/scan-skel.l: %option debug.
Scan strings of non-@ or n instead of character by character.
(scan_skel): Handle trace_skeleton.
(QPUTS): New.
(@output_parser_name@, @output_header_name@): ``Restore'' their
support (used to be M4 macros).
* data/yacc.c: Quote larger chunks, a la glr.c.
* data/lalr1.cc: Likewise.
The header guards are no longer available, so use some other
string than `YYLSP_NEEDED'.

22 years agoMake the ``Printers and Destructors'' test more verbose, taking
Akim Demaille [Sat, 16 Nov 2002 12:30:23 +0000 (12:30 +0000)] 
Make the ``Printers and Destructors'' test more verbose, taking
`yacc.c''s behavior as (possibly wrong) reference.
* tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Use printf
instead of fprint on stdout.
Set and report the last_line of the symbols.
Consistently display values and locations.

22 years ago* data/yacc.c: Avoid over-quoting of __line__ and __file__.
Paul Eggert [Sat, 16 Nov 2002 08:14:23 +0000 (08:14 +0000)] 
* data/yacc.c: Avoid over-quoting of __line__ and __file__.

22 years agoAvoid over-quoting of __line__ and __file.
Paul Eggert [Sat, 16 Nov 2002 08:13:40 +0000 (08:13 +0000)] 
Avoid over-quoting of __line__ and __file.

22 years ago* tests/actions.at (Actions after errors): New test case.
Paul Eggert [Sat, 16 Nov 2002 07:32:09 +0000 (07:32 +0000)] 
* tests/actions.at (Actions after errors): New test case.

22 years ago(Actions after errors): New test case.
Paul Eggert [Sat, 16 Nov 2002 07:31:35 +0000 (07:31 +0000)] 
(Actions after errors): New test case.

22 years agoRegenerate.
Paul Eggert [Fri, 15 Nov 2002 20:58:07 +0000 (20:58 +0000)] 
Regenerate.

22 years ago* data/glr.c, data/lalr1.cc, data/yacc.cc, doc/bison.texinfo,
Paul Eggert [Fri, 15 Nov 2002 20:32:21 +0000 (20:32 +0000)] 
* data/glr.c, data/lalr1.cc, data/yacc.cc, doc/bison.texinfo,
src/conflicts.c, src/parse-gram.y, src/tables.c, src/tables.h,
tests/action.at, tests/calc.at, tests/conflicts.at,
tests/cxx-type.at, tests/regression.at:
"parse error" -> "syntax error" for POSIX compatibility.
"parsing stack overflow..." -> "parser stack overflow" so
that code matches Bison documentation.

22 years ago* src/parse-gram.y (declaration): Have %parse-param and %lex-param
Akim Demaille [Fri, 15 Nov 2002 16:42:16 +0000 (16:42 +0000)] 
* src/parse-gram.y (declaration): Have %parse-param and %lex-param
take two BRACED_CODE, not two string_content.
Free the scanner's obstack when we are done.
(code_content): New.
* tests/calc.at: Adjust.
* doc/bison.texinfo: Adjust.
Also, make sure to include the `,' for these declarations.

22 years ago* m4/prereq.m4: Removed the commented jm_PREREQ_HASH
Akim Demaille [Fri, 15 Nov 2002 16:30:37 +0000 (16:30 +0000)] 
* m4/prereq.m4: Removed the commented jm_PREREQ_HASH
definition; avoids potential autoreconf problems.

22 years ago2002-11-15 Tim Van Holder <tim.van.holder@pandora.be>
Akim Demaille [Fri, 15 Nov 2002 09:04:37 +0000 (09:04 +0000)] 
2002-11-15  Tim Van Holder  <tim.van.holder@pandora.be>

* src/.cvsignore: Add src-gram.c.
* tests/.cvsignore: Add atlocal.
* config/.cvsignore, m4/.cvsignore, po/.cvsignore:
Add several files that autoreconf may bring in during
bootstrap.

22 years agoAlways check the value returned by yyparse.
Akim Demaille [Fri, 15 Nov 2002 08:56:40 +0000 (08:56 +0000)] 
Always check the value returned by yyparse.
* tests/calc.at (_AT_DATA_CALC_Y): Have `main' exit with the value
returned by yyparse.
(_AT_CHECK_CALC_ERROR): Take the expected exit value as argument.
Adjust calls.
* tests/glr-regr1.at (glr-regr1.y): Have `main' exit with the value
returned by yyparse.

22 years ago(AT_TEST_CPP_GUARD_H): Compile with -I., as Forte 7 C requires it,
Paul Eggert [Fri, 15 Nov 2002 01:57:23 +0000 (01:57 +0000)] 
(AT_TEST_CPP_GUARD_H): Compile with -I., as Forte 7 C requires it,
and it shouldn't hurt on other compilers.

22 years ago* src/output.c (output_skeleton): Call xfopen instead of
Paul Eggert [Fri, 15 Nov 2002 01:29:53 +0000 (01:29 +0000)] 
* src/output.c (output_skeleton): Call xfopen instead of
duplicating xfopen's body.