Akim Demaille
7bec0760a8
* src/closure.c (closure): Use arrays instead of pointers to clarify.
2001-11-19 10:38:25 +00:00
Akim Demaille
c87d4863f6
* src/closure.c, src/derives.c, src/nullable.c: Adjust various
...
trace messages.
* src/LR0.c: Likewise.
(allocate_itemsets): Use arrays instead of pointers to clarify.
2001-11-19 10:38:12 +00:00
Akim Demaille
9bfe901c33
* src/getargs.c (statistics_flag): Replace with...
...
(trace_flag): New.
(longopts): Accept --trace instead of --statistics.
* src/getargs.h, src/options.c: Adjust.
* src/LR0.c, src/closure.c, src/derives.c, src/nullable.c,
* src/reduce.c: Use trace_flags instead of the CPP conditional TRACE.
2001-11-19 10:37:58 +00:00
Akim Demaille
97db7bd4a1
* src/LR0.c (new_itemsets, get_state): Use more arrays and less
...
pointers to clarify the code.
(save_reductions, save_shifts): Factor common parts of alternatives.
2001-11-19 10:33:54 +00:00
Akim Demaille
2c5f66eda7
* src/LR0.c (new_state, get_state): Complete TRACE code.
...
* src/closure.c: Include `reader.h' to get `tags', needed by the
trace code.
Rename the conditional DEBUG as TRACE.
Output consistently TRACEs to stderr, not stdout.
* src/derives.c: Likewise.
* src/reduce.c: (inaccessable_symbols): Using if is better style
than goto.
Use `#if TRACE' instead of `#if 0' for tracing code.
2001-11-19 10:33:40 +00:00
Akim Demaille
300f275f23
* src/system.h (LIST_FREE, shortcpy): New.
...
* src/LR0.c: Use them.
* src/output.c (free_itemsets, free_reductions, free_shifts):
Remove, replaced by LIST_FREE.
2001-11-19 10:31:49 +00:00
Akim Demaille
f59c437a25
* src/state.h (CORE_ALLOC, SHIFTS_ALLOC, ERRS_ALLOC)
...
(REDUCTIONS_ALLOC): New.
* src/LR0.c, src/conflicts.c: Use them to de-obfuscate memory
allocation.
2001-11-19 10:29:17 +00:00
Akim Demaille
6986fd9e3b
* src/LR0.c (new_state): Complete trace code.
...
* src/nullable.c (set_nullable): Don't translate traces.
2001-11-19 10:28:57 +00:00
Akim Demaille
4bc30f78dc
* src/print_graph.c (print_core): Better locality of variables.
...
* src/print.c (print_core): Likewise.
2001-11-19 10:28:43 +00:00
Akim Demaille
08a946e008
* src/vcg.c: You do the output, so you are responsible of the
...
handling of VCG syntax, in particular: use quotearg.
* src/print_graph.c: Don't.
(print_actions): Don't output the actions as part of the nodes,
since that's the job of the edges.
(print_state): Don't output by hand: fill the node description,
and ask for its output.
2001-11-19 10:28:29 +00:00
Akim Demaille
f047348491
* src/bison.simple (yyparse): When reporting verbosely an error,
...
no longer issue additional quotes around token names.
* tests/calc.at: Adjust.
2001-11-19 10:27:52 +00:00
Akim Demaille
e41dc70020
* src/symtab.h, src/symtab.c: line' is a new member of bucket'.
...
* src/reader.c (record_rule_lines, rline, rline_allocated): Remove.
* src/output.c: Adjust.
2001-11-19 10:26:16 +00:00
Akim Demaille
652a871c29
* src/gram.h (rprec, rprecsym, rassoc): Remove, now part of...
...
(rule_t): this.
* src/conflicts.c, src/reader.c, src/reduce.c: Adjust.
2001-11-19 10:19:56 +00:00
Akim Demaille
b2ed6e5826
* src/gram.h (rule_t): New.
...
(rule_table): New.
(rrhs, rlhs): Remove, part of state_t.
* src/print_graph.c, src/closure.c, src/conflicts.c, src/derives.c,
* src/lalr.c, src/nullable.c, src/output.c, src/print.c,
* src/reader.c, src/reduce.c: Adjust.
2001-11-19 10:19:20 +00:00
Akim Demaille
edad70670f
* src/reader.c (symbols_output): New, extracted from...
...
(packsymbols): Here.
(reader): Call it.
2001-11-19 10:14:29 +00:00
Akim Demaille
3feec03433
* src/lalr.c (set_maxrhs, maxrhs): Remove, replaced with...
...
(maxrhs): this new function.
2001-11-19 10:09:24 +00:00
Akim Demaille
ddcd5fdff6
* src/lalr.c (F): New macro to access to the variable F.
...
Adjust.
2001-11-19 10:09:11 +00:00
Akim Demaille
bb527fc271
* src/lalr.h (LA): New macro to access to the variable LA.
...
* src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
* src/lalr.c: Adjust.
2001-11-19 10:08:54 +00:00
Akim Demaille
a845a69707
* src/lalr.c (initialize_LA): Only initialize LA. Let...
...
(set_state_table): handle the `lookaheads' members.
2001-11-19 10:08:34 +00:00
Akim Demaille
f004bf6ac4
* src/lalr.h (lookaheads): Removed array, which contents is now
...
member of...
(state_t): this structure.
* src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
Adjust.
2001-11-19 10:08:20 +00:00
Akim Demaille
de326cc0de
* src/lalr.h (consistent): Removed array, which contents is now
...
member of...
(state_t): this structure.
* src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
Adjust.
2001-11-19 10:08:02 +00:00
Akim Demaille
90b4416b5b
* src/lalr.h (reduction_table, shift_table): Removed arrays, which
...
contents is now members of...
(state_t): this structure.
* src/output.c, src/lalr.c, src/print_graph.c, src/conflicts.c:
Adjust.
2001-11-19 10:07:44 +00:00
Akim Demaille
9703cc49e0
* src/lalr.h (state_t): New.
...
(state_table): Be a state_t * instead of a core **.
(accessing_symbol): Remove, part of state_t.
* src/lalr.c: Adjust.
(set_accessing_symbol): Merge into...
(set_state_table): this.
* src/print_graph.c, src/conflicts.c: Adjust.
2001-11-19 10:07:14 +00:00
Akim Demaille
3d76b07def
* src/bison.simple (yyparse): Let yyls1, yyss1 and yyvs1 be
...
defined only if yyoverflow is defined, to avoid `warning: unused
variable `yyvs1''.
Reported by The Test Suite.
2001-11-14 14:57:44 +00:00
Akim Demaille
09b503c8e1
* src/print.c: Include reduce.h.
...
Reported by Hans Aberg.
2001-11-14 14:43:58 +00:00
Akim Demaille
0f37a9942f
* src/system.h (EXIT_SUCCESS, EXIT_FAILURE): Ensure a proper
...
definition.
* src/main.c (main): Use them.
Suggested by Hans Aberg.
2001-11-14 14:15:22 +00:00
Akim Demaille
fa63c49821
Adjust ngettext default.
2001-11-12 10:14:44 +00:00
Akim Demaille
d39d93b834
* src/system.h (ngettext): Now that we use ngettext, be sure to
...
provide a default definition when NLS are not used.
2001-11-12 09:57:58 +00:00
Akim Demaille
7da99edea7
%expext was not functioning at all.
...
* src/conflicts.c (expected_conflicts): Set to -1.
(conflict_report): Use ngettext.
(conflicts_print): Check %expect and make its violation an error.
* doc/bison.texinfo (Expect Decl): Adjust.
* configure.in (AM_GNU_GETTEXT): Ask for ngettext.
* tests/regression.at (%expect not enough, %expect right)
(%expect too much): New.
2001-11-12 09:33:38 +00:00
Akim Demaille
337c5bd131
* src/reduce.c (print_results): Rename as...
...
(reduce_output): This.
Output to OUT, passed as argument, instead of output_obstack.
(dump_grammar): Likewise.
(reduce_free): New.
Also free V1.
(reduce_grammar): No longer call reduce_output, since...
* src/print.c (print_results): do it.
* src/main.c (main): Call reduce_free;
2001-11-12 09:32:51 +00:00
Akim Demaille
c73a41af8e
* src/conflicts.c (print_reductions): Accept OUT as argument.
...
Output to it, not to output_obstack.
* src/print.c (print_actions): Adjust.
2001-11-12 09:32:35 +00:00
Akim Demaille
0df87bb609
* src/conflicts.c (count_sr_conflicts, count_rr_conflicts): Return
...
the result instead of using...
(src_total, rrc_total, src_count, rrc_count): Remove.
(any_conflicts): Remove.
(print_conflicts): Split into...
(conflicts_print, conflicts_output): New.
* src/conflicts.h: Adjust.
* src/main.c (main): Invoke both conflicts_output and conflicts_print.
* src/print.c (print_grammar): Issue `n' between to rule outputs.
* tests/regression.at (Conflicts): New.
Reported by Tom Lane.
2001-11-12 09:31:40 +00:00
Akim Demaille
e9e4c32114
* src/bison.simple (YYSTACK_REALLOC): New.
...
(yyparse) [!yyoverflow]: Use it and free the old stack.
Reported by FIXME: Who.
2001-11-12 09:24:50 +00:00
Akim Demaille
5f7e08323a
* src/bison.simple: Define type yystype instead of YYSTYPE, and
...
define CPP macro, which substitute YYSTYPE by yystype.
* src/reader.c (parse_union_decl): Output yystype/YYSTYPE as we do
with yyltype/YYLTYPE. This allows inclusion of the generated
header within the parser if the compiler, such as GGC, accepts
multiple equivalent #defines.
From Akim.
2001-11-12 09:24:14 +00:00
Akim Demaille
e3f1699f55
* src/reader.c (symbols_output): New, extracted from...
...
(packsymbols): here.
(reader): Adjust.
2001-11-05 14:19:29 +00:00
Akim Demaille
65be086611
* src/lex.c (parse_percent_token): s/quotearg/quote/.
2001-11-05 10:07:46 +00:00
Akim Demaille
951366c145
* src/options.h (struct option_table_struct): set_flags is void*.
...
* src/options.c (longopts): Support `--output' and `%output'.
(usage): Adjust.
* src/lex.h (tok_setopt): Remove, replaced with...
(tok_intopt, tok_stropt): these new guys.
* src/lex.c (getopt.h): Not needed.
(token_buffer, unlexed_token_buffer): Not const.
(percent_table): Promote `-' over `_' in directive names.
Active `%name-prefix', `file-prefix', and `output'.
(parse_percent_token): Accept possible arguments to directives.
Promote `-' over `_' in directive names.
2001-11-05 09:09:19 +00:00
Akim Demaille
6b7e85b994
* src/symtab.h (SUNDEF): New.
...
* src/symtab.c (bucket_new): Init user_token_number to SUNDEF to
stand for `uninitialized', instead of 0.
* src/reader.c (packsymbols, parse_thong_decl): Adjust.
* src/lex.c (lex): Adjust.
* tests/calc.at (_AT_DATA_CALC_Y): Declare a token for EOF.
Number it 0.
Let yylex return it instead of a plain 0.
Reported by Dick Streefland.
2001-11-02 15:27:11 +00:00
Akim Demaille
037ca2f14c
* src/reader.c (parse_thong_decl): Formatting changes.
...
(token_translations_init): New, extracted from...
(packsymbols): Here.
Adjust.
2001-11-02 14:04:54 +00:00
Akim Demaille
270a173cf3
* tests/regression.at (AT_TEST_CPP_GUARD_H): New.
...
Check that `9foo.y' produces correct cpp guards.
* src/files.c (compute_header_macro): Prepend `BISON_' to CPP
guards.
Reported by Wwp.
2001-11-01 18:28:38 +00:00
Akim Demaille
561f9a30af
* tests/regression.at (Invalid input: 2): New.
...
* src/lex.c (unlexed_token_buffer): New.
(lex, unlex): Adjust: when unlexing, be sure to save token_buffer
too.
Reported by Wwp.
2001-11-01 18:05:22 +00:00
Pascal Bart
0846f581e8
* src/conflicts.c: Move global variables rrc_total and src_total ...
...
(print_conflicts): here.
* src/output.c (output): Free global variable user_toknums.
* src/lex.c (token_obstack): Become static.
2001-10-19 11:03:50 +00:00
Marc Autret
5d52e7d045
* src/options.c (create_long_option_table): Fix.
2001-10-15 19:01:12 +00:00
Akim Demaille
631aa1d3dc
* src/bison.simple: Be sure to set YYSTACK_USE_ALLOCA.
2001-10-10 14:58:26 +00:00
Akim Demaille
ee006e3a4c
Adjust.
2001-10-04 15:12:55 +00:00
Akim Demaille
c07c873533
Adjust.
2001-10-04 15:09:51 +00:00
Akim Demaille
f6ec6d13dc
* src/reader.c (parse_union_decl): Push the caracters in
...
union_obstack, not attrs_obstack.
2001-10-04 15:07:32 +00:00
Akim Demaille
342b8b6e21
Merge in branch-1_29.
2001-10-04 14:55:21 +00:00
Akim Demaille
3a7bc75ff7
Remove for the repo.
2001-10-04 13:21:02 +00:00
Pascal Bart
c20e2bdcf1
Ignore .flc
2001-09-25 11:37:26 +00:00