d6ca7905ab
* NEWS: Document the fact that multiple %unions are now allowed. * doc/bison.texinfo (Union Decl): Likewise.
Paul Eggert2006-01-19 06:44:49 +00:00
2073ce56f5
accessed -> addressed (fix typo in changelog entry)
Paul Eggert2006-01-19 06:03:18 +00:00
ef1b70e009
Upgrade Makefile.maint, djgpp/config.sed.
Paul Eggert2006-01-19 06:02:24 +00:00
cc14efa5bc
Merge with coreutils Makefile.maint. (CVS_LIST): Use build-aux version if available. (VERSION_REGEXP): New macro. (syntax-check-rules): Add sc_no_if_have_config_h, sc_prohibit_assert_without_use, sc_require_config_h, sc_useless_cpp_parens. (sc_obsolete_symbols): Check for O_NDELAY. (sc_dd_max_sym_length): Track coreutils. (sc_unmarked_diagnostics): Look in all files, not just *.c. (sc_useless_cpp_parens): New rule. (news-date-check): Look for version or today's date. (changelog-check): Don't require version number near head. (copyright-check): Use current year instead of hardwiring 2005. (my-distcheck): Depend on $(release_archive_dir)/$(prev-tgz). (announcement): Add --gpg-key-ID.
Paul Eggert2006-01-19 06:00:28 +00:00
db0dcbf315
Add copyright notice, and replace "filesystem" with "file system".
Paul Eggert2006-01-19 05:53:41 +00:00
e9ad4aeca5
Avoid undefined behavior that accessed just before the start of an array. * src/reader.c (packgram): Prepend a new sentinel before ritem. * src/lalr.c (build_relations): Rely on new sentinel. * src/gram.c (gram_free): Adjust to new sentinel.
Paul Eggert2006-01-18 23:48:29 +00:00
02d7cce6e2
Fix minor white space and indentation problems.
Paul Eggert2006-01-14 06:36:04 +00:00
b7691f15bd
* data/glr.c (yyGLRStateSet): Rename yylookaheadStatuses to yylookaheadNeeds. All uses updated. (yysplitStack): Rename local yynewLookaheadStatuses to yynewLookaheadNeeds. * data/glr-regression.at (Incorrect lookahead during nondeterministic GLR): In comments, change lookahead status' to lookahead need'.
Joel E. Denny2006-01-12 01:43:03 +00:00
ddee1b0666
* data/glr.c (yysplitStack): A little stylistic rewrite.
Paul Hilfinger2006-01-12 00:16:35 +00:00
12f4614d07
* data/glr.c (yyaddDeferredAction): Flesh out the comment.
Paul Hilfinger2006-01-11 23:08:49 +00:00
32c292920e
* doc/bison.texinfo: Fix some typos. (GLR Semantic Actions): New subsection discussing special considerations because GLR semantic actions might be deferred. (Actions): Mention look-ahead usage of yylval. (Actions and Locations): Mention look-ahead usage of yylloc. (Special Features for Use in Actions): Add YYEOF entry and mention it in the yychar entry. In the yychar entry, remove mention of the local yychar case (pure parser) since this is irrelevant information when writing semantic actions and since it's already discussed in Bison Symbols' where yychar is otherwise described as an external variable. In the yychar entry, don't call it the current' look-ahead since it isn't when semantic actions are deferred. In the yychar and yyclearin entries, add note about deferred semantic actions. Add yylloc and yylval entries discussing look-ahead usage. (Look-Ahead Tokens): When discussing yychar, don't call it the current' look-ahead, and do mention yylval and yylloc. (Error Recovery): Cross-reference Action Features' when mentioning yyclearin. (Bison Symbols): In the yychar entry, don't call it the `current' look-ahead. In the yylloc and yylval entries, mention look-ahead usage.
Joel E. Denny2006-01-11 22:39:27 +00:00
de366a2f6b
Fix latest changelog entry: the "who" was missing.
Paul Eggert2006-01-09 06:49:18 +00:00
2781dbd121
* tests/glr-regression.at: Update copyright year to 2006.
Joel E. Denny2006-01-08 23:16:51 +00:00
bf70fa8729
* data/glr.c (yyGLRStateSet): Add yybool* yylookaheadStatuses member to use during nondeterministic operation to track which stacks have actually needed the current lookahead. (yyinitStateSet, yyfreeStateSet, yyremoveDeletes, yysplitStack): Allocate, deallocate, resize, and otherwise shuffle space for yylookaheadStatuses in parallel with yystates member of yyGLRStateSet. (yysplitStack, yyprocessOneStack, yyparse): Set lookahead status appropriately during nondeterministic operation. (yySemanticOption): Add int yyrawchar, YYSTYPE yyval, and YYLTYPE yyloc members to store the current lookahead to be used by the deferred user action. (yyaddDeferredAction): Add size_t yyk parameter specifying the stack from which the RHS is taken. Set the lookahead members of the new yySemanticOption according to the lookahead status for stack yyk. (yyglrShiftDefer, yyglrReduce): Pass yyk parameter on to yyaddDeferredAction. (yyresolveAction): Set yychar, yylval, and yylloc to the lookahead members of yySemanticOption before invoking yyuserAction, and then set them back to their current values afterward. (yyparse): Set yychar = YYEMPTY where yytoken = YYEMPTY. (yyreportAmbiguity): Add /*ARGSUSED*/ to pacify lint. * tests/glr-regression.at: Remove `.' from the ends of recent test case titles for consistency. (Leaked merged semantic value if user action cuts parse): In order to suppress lint warnings, use arguments in merge function, and assign char value < 128 in main. (Incorrect lookahead during deterministic GLR): New test case. (Incorrect lookahead during nondeterministic GLR): New test case.
Joel E. Denny2006-01-06 20:48:33 +00:00
05449a2c1b
* data/c.m4 (b4_yy_symbol_print_generate): In yy_symbol_print, accept !yyvaluep as signal that no semantic value is available to print. * data/glr.c (yydestroyGLRState): If state is not resolved, don't try to print a semantic value.
Joel E. Denny2006-01-06 20:09:31 +00:00
4158e0a143
* tests/glr-regression.at: For consistency with my newer test cases, don't thank myself.
Joel E. Denny2006-01-06 01:07:37 +00:00
d659304d0a
* data/glr.c (yyresolveValue): When merging semantic options, if at least one user action succeeds but a later one cuts the parse, then destroy the semantic value before returning rather than leaking it. (yyresolveStates): If a user action cuts the parse and thus yyresolveValue fails, ignore the (unset) semantic value rather than corrupting the yyGLRState, and empty the semantic options list since the user actions should have called all necessary destructors. Simplify code with YYCHK. * tests/glr-regression.at (Corrupted semantic options if user action cuts parse): New test case. (Undesirable destructors if user action cuts parse): New test case. Before applying any of this patch, this test case never actually failed for me... but only because the corrupted semantic options usually masked this bug. (Leaked merged semantic value if user action cuts parse): New test case.
Joel E. Denny2006-01-05 21:07:54 +00:00
1b9c21fb18
* data/c.m4 (b4_c_modern): New macro, with a new provision for _MSC_VER. (b4_c_function_def): Use it. * data/yacc.c (YYMODERN_C): Remove. All uses replaced by b4_c_modern. (yystrlen, yystpcpy, yyparse): Use b4_c_function... macros rather than rolling our own.
Paul Eggert2006-01-04 23:35:43 +00:00
8486615972
Also warn about non-used mid-rule values. * src/symlist.h, src/symlist.c (symbol_list): Add a mid_rule member. (symbol_list_new): Adjust. * src/reader.c (symbol_typed_p): New. (grammar_rule_check): Use it. (grammar_midrule_action): Bind a mid-rule LHS to its rule. Check its rule. * tests/input.at (AT_CHECK_UNUSED_VALUES): New. Use it. * tests/actions.at (Exotic Dollars): Adjust.
Akim Demaille2006-01-04 09:18:37 +00:00
378f4bd846
* src/reader.c (grammar_midrule_action): If $$ is set in a mid-rule, move the `used' bit to its lhs. * tests/input.at (Unused values): New. * tests/actions.at (Exotic Dollars): Adjust: exp is not typed.
Akim Demaille2006-01-04 08:32:46 +00:00
5466269793
* doc/bison.texinfo (Bison Options): Say more accurately what --yacc does. * src/parse-gram.y (rules_or_grammar_declaration): Don't complain about declarations in the grammar when in Yacc mode, as POSIX does not require a diagnostic when the grammar uses extensions.
Paul Eggert2006-01-03 22:35:45 +00:00
4d56beff96
(reduce_grammar): Remove unnecessary cast to bool.
Paul Eggert2006-01-03 22:24:43 +00:00
073f92889f
Warn about dubious constructions like "%token T T". * src/symtab.h (struct symbol.declared): New member. * src/symtab.c (symbol_new): Initialize it to false. (symbol_class_set): New arg DECLARING, specifying whether this is a declaration that we want to warn about, if there is more than one of them. All uses changed.
Paul Eggert2006-01-03 21:31:57 +00:00
1221b78adb
* data/glr.c, data/glr.cc, data/lalr1.cc, data/yacc.c: Allow multiple %union directives, whose contents concatenate. * src/parse-gram.y (grammar_declaration): Likewise. Use muscle_code_grow, so that we don't need stype_line any more. All uses changed.
Paul Eggert2006-01-03 20:25:54 +00:00
8f7e3cf9d0
Have glr.cc pass (some of) the calc.at tests. * data/glr.cc (b4_parse_param_orig): New. (b4_parse_param): Improve its definition, and bound it more clearly in the skeleton. (b4_epilogue): Append, instead of prepending, in order to keep #line consistency. Simplify the generation of auxiliary functions: locations and purity are mandated. (b4_global_tokens_and_yystype): Honor it. * data/location.cc (c++.m4): Don't include it. * tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Define AT_GLR_CC_IF and AT_SKEL_CC_IF. * tests/calc.at (AT_CHECK_CALC): Rely on AT_SKEL_CC_IF instead of AT_LALR1_CC_IF. Be sure to initialize the first position's filename. (AT_CHECK_CALC_LALR1_CC): Add %location and %defines, they are mandated anyway. (AT_CHECK_CALC_GLR_CC): New. Use it to exercise glr.cc as a lalr1.cc drop-in replacement.
Akim Demaille2006-01-03 09:06:22 +00:00
0a96ba819f
* src/output.c (output_skeleton): Don't hard wire the inclusion of c.m4. * data/c++.m4, data/glr.c, data/yacc.c: Include c.m4. * data/glr.cc: Do not include stack.hh.
Akim Demaille2006-01-02 16:26:17 +00:00
3953ed882a
* src/output.c (output_skeleton): Don't hard wire the inclusion of c.m4. * data/c++.m4: Include c.m4. * data/glr.cc: Do not include stack.hh.
Akim Demaille2006-01-02 16:06:11 +00:00
9ecafbbfe7
* data/glr.c: Reformat whitespace with tabs. (b4_lpure_formals): Remove this unused m4 macro. * tests/cxx-type.at: Reformat whitespace with tabs. (_AT_TEST_GLR_CXXTYPES): In union Node, rename node_info to nodeInfo since it's a member. Rename type to isNterm for clarity.
Akim Demaille2006-01-02 15:28:03 +00:00
c4d497a010
Let glr.cc catch up with symbol_value_print. * data/glr.cc (b4_yysymprint_generate): Replace by... (b4_yy_symbol_print_generate): this. (yy_symbol_print, yy_symbol_value_print): Declare them.
Akim Demaille2005-12-29 11:06:33 +00:00
4517da3757
* src/location.h (boundary): Note that a line or column equal to INT_MAX indicates an overflow. * src/scan-gram.l: Include verify.h. Don't include get-errno.h. (rule_length_overflow, increment_rule_length, add_column_width): New functions. (<INITIAL>{id}, <SC_ESCAPED_STRING>"\"", <SC_ESCAPED_CHARACTER>"'"): (<SC_BRACED_CODE>"}"): Use increment_rule_length rather than incrementing it by hand. (adjust_location, handle_syncline): Diagnose overflow. (handle_action_dollar, handle_action_at): Fix bug with monstrosities like $-2147483648. Remove now-unnecessary checks. (scan_integer): Verify assumptions and remove now-unnecessary checks. (convert_ucn_to_byte): Verify assumptions. (handle_syncline): New arg LOC. All callers changed. Don't store through a value derived from char const * pointer.
Paul Eggert2005-12-28 08:45:47 +00:00
668c5d1927
(grammar_rule_check): Rewrite slightly to avoid GCC warnings.
Paul Eggert2005-12-28 08:31:22 +00:00
8f3596a633
* src/reader.c (grammar_current_rule_check): Also check that $$ is used. Take the rule to check as argument, hence rename as... (grammar_rule_check): this. * src/reader.h, src/reader.c (grammar_rule_begin, grammar_rule_end): Rename as... (grammar_rule_begin, grammar_rule_end): these, for consistency. (grammar_midrule_action, grammar_symbol_append): Now static. * tests/torture.at (input): Don't rely on the default action being always performed. * tests/calc.at: "Set" $$ even when the action is "cut" with YYERROR or other. * tests/actions.at (Exotic Dollars): Instead of using unused values, check that the warning is issued.
Akim Demaille2005-12-27 17:50:00 +00:00
9d9b8b7006
* NEWS: Reword %destructor vs YYABORT etc. * data/glr.c: Use American spacing, for consistency. * data/glr.cc: Likewise. * data/lalr1.cc: Likewise. * data/yacc.c: Likewise. * data/yacc.c: Reformat comments slightly. * doc/bison.texinfo: Replace "non-" with "non" when that makes sense, for consistency. Fix some spelling errors and reword recently-included text slightly. * tests/cxx-type.at: Cast results of malloc, for C++.
Paul Eggert2005-12-22 00:24:40 +00:00
2c3b392a9a
* tests/cxx-type.at: Construct a tree, count the parents of shared nodes, and free each node once and only once. Previously, the memory for semantic values was leaked instead.
Akim Demaille2005-12-21 15:45:17 +00:00
d6cff4dc6f
* data/glr.c (struct yyGLRStack): If pure, add yyval and yyloc members. (yylval, yylloc): If pure, #define to yystackp->yyval and yystackp->yyloc similar to yychar and yynerrs. (yyparse): If pure, remove local yylval and yylloc. Add local yystackp to accommodate pure definitions of yylval and yylloc. (b4_lex_param, b4_lyyerror_args, b4_lpure_args): If pure, change yylvalp and yyllocp to &yylval and &yylloc. (nerrs, char, lval, lloc): If pure, add #define's for b4_prefix[] namespace. Previously, nerrs and char were missing, but lval and lloc weren't necessary. (yyprocessOneStack, yyreportSyntaxError, yyrecoverSyntaxError): Remove yylvalp and yyllocp parameters since, if pure, these are now always accessible through yystackp. If not pure, they are still accessible globally. * data/glr.c, data/yacc.c (YYLLOC_DEFAULT): Change if (N)' to if (YYID (N))' to pacify lint.
Akim Demaille2005-12-21 15:33:13 +00:00
a85284cfbd
YYACCEPT, YYERROR, and YYABORT, as user actions, should not destroy the RHS symbols of a rule. * data/yacc.c (yylen): Initialize to 0. Keep its value to the number of items to possibly shift. In particular, a regular successful parse that ends on YYFINAL by a (internal) YYACCEPT must not have yylen != 0. (yyerrorlab, yyreturn): Pop the RHS. Reorder a bit to emphasize the `shifting' bits of code. (YYPOPSTACK): Now accept a number of items to pop. * data/lalr1.cc: Likewise. * data/glr.c: Formatting changes. Use goto instead of fall through. * doc/bison.texinfo (Destructor Decl): Complete.
Akim Demaille2005-12-21 15:28:30 +00:00
d508c2816f
* Makefile.am: DJGPP specific files added to EXTRA_DIST. * djgpp/Makefile.maint: Fix PACKAGE variable computation. * djgpp/config.bat: Replace every occurence of the file name scan-gram-c.c with c-scan-gram.c. The same for scan-skel-c.c with c-scan-skel.c to conform with the 8.3 file name restriction on MSDOS. * djgpp/config.sed: Replace every occurence of the file name scan-gram-c.c with c-scan-gram.c. The same for scan-skel-c.c with c-scan-skel.c to conform with the 8.3 file name restriction on MSDOS. * djgpp/djunpack.bat: DJGPP specific file. * djgpp/fnchange.lst: DJGPP specific file. * djgpp/README.in: Add new information about how to unpack the bison source on MSDOS and other systems which have 8.3 file name restrictions using djunpack.bat and fnchange.lst.
Juan Manuel Guerrero2005-12-21 00:24:54 +00:00
bf60087f69
Add new information about how to unpack the bison source on MSDOS and other systems which have 8.3 file name restrictions using djunpack.bat and fnchange.lst.
Juan Manuel Guerrero2005-12-21 00:01:40 +00:00
90ddbd5eed
Replace file name scan-gram-c.c with scangram-c.c and scan-skel-c.c with /src/scanskel-c.c to conform with the 8.3 file name restriction on MSDOS.
Juan Manuel Guerrero2005-12-21 00:01:28 +00:00
3e7a2cd95f
* data/glr.c: Reorder typedef declarations for structs to match order of struct declarations. Rename yystack everywhere to yystackp except in yyparse where it's not a pointer. (yyglrShift): Change parameter YYSTYPE yysval to YYSTYPE* yyvalp for consistency. (yyis_table_ninf): Change 0 to YYID (0) to pacify lint. (yyreportSyntaxError): Add /*ARGSUSED*/ to pacify lint. (yyparse): Change while (yytrue) to while ( YYID (yytrue)) to pacify lint.
Paul Eggert2005-12-12 21:04:39 +00:00
26546b4258
(build_cvs_prefix): Remove; unused. (CVS_PREFIX): Adjust to yesterday's Savannah reorganization when getting gnulib.
Paul Eggert2005-12-12 20:59:30 +00:00
0eca5a39a7
* tests/sets.at (Accept): Fix typos in regular expression used to sed out the final state number.
Paul Eggert2005-12-10 00:25:27 +00:00
2cec9080f6
Work around portability problem on Solaris 10: flex-generated files include <stdio.h> before <config.h>, which messes up because the latter defines __EXTENSIONS__. Address the problem by creating two new little files that include <config.h> first, then include the flex-generated files. Rewrite everyone else to include <config.h> first, as well. * lib/timevar.c: Always include "config.h". * src/Makefile.am (bison_SOURCES): Replace scan-gram.l with scan-gram-c.c, and scan-skel.l with scan-skel-c.c. (EXTRA_bison_SOURCES): New macro. * src/scan-gram-c.c, src/scan-skel-c.c: New files. * src/system.h: Don't include config.h. * src/LR0.c: Include <config.h> first. * src/assoc.c: Likewise. * src/closure.c: Likewise. * src/complain.c: Likewise. * src/conflicts.c: Likewise. * src/derives.c: Likewise. * src/files.c: Likewise. * src/getargs.c: Likewise. * src/gram.c: Likewise. * src/lalr.c: Likewise. * src/location.c: Likewise. * src/main.c: Likewise. * src/muscle_tab.c: Likewise. * src/nullable.c: Likewise. * src/output.c: Likewise. * src/parse-gram.y: Likewise. * src/print.c: Likewise. * src/print_graph.c: Likewise. * src/reader.c: Likewise. * src/reduce.c: Likewise. * src/relation.c: Likewise. * src/state.c: Likewise. * src/symlist.c: Likewise. * src/symtab.c: Likewise. * src/tables.c: Likewise. * src/uniqstr.c: Likewise. * src/vcg.c: Likewise.
Paul Eggert2005-12-09 23:51:26 +00:00
877519f839
* src/parse-gram.y: Fix minor problems uncovered by lint. (current_lhs, current_lhs_location): Now static. (current_assoc): Remove unused variable.
Paul Eggert2005-12-09 22:43:00 +00:00
12ce2df60d
Cleanups so that Bison-generated parsers have less lint. * data/c.m4 (b4_yydestruct_generate, b4_yysymprint_generate): Prepend /*ARGSUSED*/, for lint's sake. * data/glr.c (YYUSE): Properly parenthesize, and use an alternate definition if 'lint' is defined. (YYID): New macro (or function, if lint). All uses of /*CONSTCOND*/0 replaced by YYID(0). * data/yacc.c: Likewise. * data/glr.c (yyuserAction, yyuserMerge, yy_reduce_print): (yyrecoverSyntaxError): Prepend /*ARGSUSED*/. * data/glr.cc (YYLLOC_DEFAULT): Omit /*CONSTCOND*/ since this code is C++ only. * data/lalr1.cc (YYUSE): Just use a cast, since this code is C++ only. * data/yacc.c (YYSTACK_FREE) [defined YYSTACK_ALLOC]: Use YYID(0) rather than 0, for lint. (yystrlen): Rewrite to avoid lint warning about ptrdiff_t overflow. (yysyntax_error): Rewrite to avoid lint warnings about parenthesization.
Paul Eggert2005-12-09 22:14:36 +00:00
f5228370c5
* tests/glr-regression.at (Improper handling of embedded actions and dollar(-N) in GLR parsers): Close memory leak reported by twlevo.
Paul Eggert2005-12-08 06:52:43 +00:00
69ce078b8c
* data/glr.c (yyprocessOneStack): Synchronize the shift for all stacks, and iterate another stack in order to call user destructors. * tests/glr-regression.at (No users destructors if stack 0 deleted): New test case. (Duplicated user destructor for lookahead): This test now is expected to succeed.
Paul Eggert2005-12-06 19:38:25 +00:00
af3412cdea
* data/yacc.c: Say "parser skeleton" rather than "file", since it's no longer just a file. * data/glr.c: Grant a special exception for C GLR parsers, that reads like the already-existing exception for C LALR(1) parsers. * data/glr.cc: Likewise. * data/lalr1.cc: Likewise. * data/location.cc: Likewise. * data/yacc.c: Reword the "written by" statement to clarify that it was the parser skeleton, not the entire output file. * data/glr.c: Written by Paul Hilfinger. * data/glr.cc: Written by Akim Demaille. * data/lalr1.cc: Likewise.
Paul Eggert2005-12-01 20:03:55 +00:00
d9963c8597
* data/yacc.c (yy_reduce_print, YY_REDUCE_PRINT): Fix typos in previous change that broke 'make check'. YY_REDUCE_PRINT cannot be a pseudo-varargs macro; that isn't supported in C. * tests/calc.at (_AT_CHECK_CALC,_AT_CHECK_CALC_ERROR): Don't check NUM-STDERR-LINES, since the output format is fluctuating. We can revert this once things settle down.
Paul Eggert2005-11-18 19:37:13 +00:00
035aa4a0bb
* src/conflicts.c (conflicts_print): Don't print file name twice when %expect fails because there were no conflicts. * doc/bison.texinfo (Expect Decl): Tighten up wording in previous change. * tests/conflicts.at (%expect not enough, %expect too much): (%expect with reduce conflicts): Adjust to new behavior.
Paul Eggert2005-11-18 18:16:44 +00:00
d1ff7a7cc6
Generalize the display of semantic values and locations in traces. * data/glr.c (yy_reduce_print): Fix indices (again). * data/c++.m4 (b4_rhs_value, b4_rhs_location): Don't expect literal integers. * data/lalr1.cc (yyreduce_print): Rename as... (yy_reduce_print): this. Display values and locations. * data/yacc.c (yy_reduce_print): Likewise. (YY_REDUCE_PRINT): Adjust to pass the required arguments. (yysymprint): Move higher to be visible from yy_reduce_print). (yyparse): Adjust. * tests/calc.at: Adjust the expected length of the traces.
Akim Demaille2005-11-16 14:20:48 +00:00
6de5398de3
* data/glr.c (yy_reduce_print): The loop was quite wrong: type are from 1 to N, while values and location start at 0. (b4_rhs_location, b4_rhs_value): Add parens around $1 and $2.
Akim Demaille2005-11-14 17:20:28 +00:00
5059b5c887
Have glr.c include its header file when created. * data/glr.c (b4_shared_declarations): New. Output them verbatim in the parser if !%defines, otherwise output then in the header file, and include it instead.
Akim Demaille2005-11-14 08:09:00 +00:00
4626a15dd1
Let position and location be PODs. * data/location.cc (position::initialize, location::initialize): New. (position::position, location::location): Define only if b4_location_constructors is defined. * data/lalr1.cc (b4_location_constructors): Define it for backward compatibility. * doc/bison.texinfo (Initial Action Decl): Use initialize.
Akim Demaille2005-11-12 14:13:03 +00:00
98ae96438e
* data/lalr1.cc: Move the body of the ctor and dtor into the parser file (instead of the header). Wrap the implementations in a "namespace yy".
Akim Demaille2005-11-12 11:32:46 +00:00
62b08cfcd7
When yydebug, report semantic and location values for reductions. * data/glr.c (yy_reduce_print): Report the semantic values and the locations. (YY_REDUCE_PRINT): Adjust. (yyglrReduce): Use them. (b4_rhs_value, b4_rhs_location): Remove m4_eval invocations. * data/c.m4 (b4_yysymprint_generate): Specify the const arguments. * tests/calc.at (_AT_CHECK_CALC_ERROR): Remove the reduction traces.
Akim Demaille2005-11-11 10:36:24 +00:00
0299809431
* data/glr.c (yynewGLRStackItem, YY_RESERVE_GLRSTACK): New. (yyaddDeferredAction, yyglrShift, yyglrShiftDefer): Use them. (yyexpandGLRStack, YYRELOC): Define only when YYSTACKEXPANDABLE.
Akim Demaille2005-11-11 09:20:03 +00:00
5210672f6b
* m4/cxx.m4, examples/Makefile.am: Don't build examples/calc++ if no C++ compiler is available.
Paul Eggert2005-11-10 00:33:04 +00:00
a8991a1da4
* src/scan-skel.l: Use a couple of asserts.
Akim Demaille2005-11-09 16:11:25 +00:00
36b5e963e6
In some (weird) cases, the final state number is incorrect. Reported by Alexandre Duret-Lutz. * src/LR0.c (state_list_append): Remove the computation of final_state. (save_reductions): Do it here. (get_state): Alpha conversion. (generate_states): Use a for loop. * src/gram.h (item_number_is_rule_number) (item_number_is_symbol_number): New. * src/state.c: Use assert. * src/system.h: Include assert.h. * tests/sets.at (Accept): New.
Akim Demaille2005-11-09 15:48:05 +00:00
44e7ead165
data/glr.c (yyfill): Adjust comment. (yyresolveAction): Initialize default location properly for empty right-hand sides. (yydoAction): Ditto. Add comment explaining apparently dead code. * tests/glr-regression.at (Incorrectly initialized location for empty right-hand side in GLR): New test.
Paul Hilfinger2005-10-31 01:16:32 +00:00
e10a80eeac
* bootstrap (cleanup_gnulib): New function. Use it to clean up gnulib when interrupted. This fixes some race conditions and works around some portability problems (one noted by Paul Hilfinger).
Paul Eggert2005-10-31 00:11:48 +00:00
067b32eef4
* Makefile.cfg: Adjust to config -> build-aux. Reported by twledo.
Akim Demaille2005-10-22 06:44:35 +00:00