X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/3db472b9ebf3e4f58154af02c713e29d258926f5..375d580671a0e20f43451f72247801048c0d25cb:/ChangeLog diff --git a/ChangeLog b/ChangeLog index da19c05a..afca4bb9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,184 @@ +2001-12-29 Akim Demaille + + Memory leak. + + * src/LR0.c (new_itemsets): Don't allocate `shift_symbol' here, + since it allocates it for each state, although only one is needed. + (allocate_storage): Do it here. + + +2001-12-29 Akim Demaille + + * src/options.h, src/options.c (create_long_option_table): Rename + as... + (long_option_table_new): this, with a clearer prototype. + (percent_table): Remove, unused, + * src/getargs.c (getargs): Adjust. + + +2001-12-29 Akim Demaille + + * src/LR0.c, src/conflicts.c, src/lalr.c, src/lalr.h, src/output.c + * src/print.c, src/print_graph.c, src/state.h: Rename state_table + as states. + + +2001-12-29 Akim Demaille + + * src/lalr.c (build_relations): Rename `states' as `states1'. + Sorry, I don't understand exactly what it is, no better name... + + +2001-12-29 Akim Demaille + + * src/closure.c, src/conflicts.c, src/derives.c, src/gram.c + * src/gram.h, src/lalr.c, src/nullable.c, src/output.c, src/print.c + * src/print_graph.c, src/reader.c, src/reduce.c: Rename rule_table + as rules. + + +2001-12-29 Akim Demaille + + * src/gram.c (rprec, rprecsym, rassoc): Remove, unused since long + ago. + + +2001-12-29 Akim Demaille + + * src/reader.c, src/reader.h (user_toknums): Remove. + Adjust all users to use symbols[i]->user_token_number. + + +2001-12-29 Akim Demaille + + * src/gram.c, src/gram.h (sprec, sassoc): Remove. + Adjust all users to use symbols[i]->prec or ->assoc. + + +2001-12-29 Akim Demaille + + * src/reader.c, src/reader.h (tags): Remove. + Adjust all users to use symbols[i]->tag. + + +2001-12-29 Akim Demaille + + * src/gram.h, src/gram.c (symbols): New, similar to state_table + and rule_table. + * src/reader.c (packsymbols): Fill this table. + Drop sprec. + * src/conflicts.c (resolve_sr_conflict): Adjust. + * src/reduce.c (reduce_grammar): Adjust: just sort symbols, a + single table. + Use symbols[i]->tag instead of tags[i]. + + +2001-12-29 Akim Demaille + + * tests/calc.at (_AT_DATA_CALC_Y): Also use %union. + In addition, put a comment in there, to replace... + * tests/regression.at (%union and C comments): Remove. + + +2001-12-29 Akim Demaille + + * tests/regression.at (Web2c Actions): Blindly move the actual + output as expected output. The contents *seem* right to me, but I + can't pretend reading perfectly parser tables... Nonetheless, all + the other tests pass correctly, the table look OK, even though the + presence of `$axiom' is to be noted: AFAICS it is useless (but + harmless). + + +2001-12-29 Akim Demaille + + * src/reader.c (readgram): Don't add the rule 0 if there were no + rules read. In other words, add it _after_ having performed + grammar sanity checks. + Fixes the `tests/regression.at (Invalid input: 1)' Failure. + + +2001-12-29 Akim Demaille + + * tests/regression.at (Web2c Report): Catch up: the rule 0 is now + visible, and some states have now a different number. + + +2001-12-29 Akim Demaille + + * src/reader.c (readgram): Bind the initial rule's lineno to that + of the first rule. + * tests/regression.at (Rule Line Numbers, Unresolved SR Conflicts): + (Solved SR Conflicts): Adjust rule 0's line number. + + +2001-12-29 Akim Demaille + + Fix the `GAWK Grammar' failure. + + * src/LR0.c (final_state): Initialize to -1 so that we do compute + the reductions of the first state which was mistakenly confused + with the final state because precisely final_state was initialized + to 0. + * tests/sets.at (Nullable): Adjust: state 0 does have lookaheads, + now noticed by Bison. + * tests/regression.at (Rule Line Numbers): Adjust: state 0 does + have a reduction on $default. + + +2001-12-29 Akim Demaille + + * src/gram.c (ritem_print): Be sure to subtract 1 when displaying + rule line numbers. + * src/closure.c (print_closure): Likewise. + * src/derives.c (print_derives): Likewise. + * tests/sets.at (Nullable): Adjust: the rule numbers are correct + now. + +2001-12-29 Akim Demaille + + * src/lalr.c (lookaheads_print): New. + (lalr): Call it when --trace-flag. + * tests/sets.at (Nullable): Adjust: when tracing, the lookaheads + are dumped. + + +2001-12-29 Akim Demaille + + * src/derives.c (print_derives): Be sure to use `>= 0', not `> 0', + when walking through ritem, even via rule->rhs. + * src/reduce.c (dump_grammar, useful_production, reduce_output) + (useful_production, useless_nonterminals): Likewise. + (reduce_grammar_tables): Likewise, plus update nritems. + * src/nullable.c (set_nullable): Likewise. + * src/lalr.c (build_relations): Likewise. + * tests/sets.at (Nullable): Adjust. + Fortunately, now, the $axiom is no longer nullable. + + +2001-12-29 Akim Demaille + + * src/LR0.c (generate_states): Use nritems, not nitems, nor using + the 0-sentinel. + * src/gram.c (ritem_longest_rhs): Likewise. + * src/reduce.c (nonterminals_reduce): Likewise. + * src/print_graph.c (print_graph): Likewise. + * src/output.c (output_rule_data): Likewise. + * src/nullable.c (set_nullable): Likewise. + +2001-12-29 Akim Demaille + + * src/output.c: Comment changes. + +2001-12-27 Paul Eggert + + * src/bison.simple (YYSTACK_ALLOC, YYSIZE_T): Remove special + cases for non-GNU systems like AIX, HP-UX, SGI, Sun, and + Sparc, as they were causing more porting problems than the + (minor) performance improvement was worth. + + Also, catch up with 1.31's YYSTD. + 2001-12-27 Akim Demaille * src/output.c (output_gram): Rely on nritems, not the @@ -9,34 +190,12 @@ twice `Now at end of input', therefore there are two lines less to expect. - 2001-12-27 Akim Demaille * tests/regression.at (Unresolved SR Conflicts): (Solved SR Conflicts, Rule Line Numbers): Adjust to the changes below. - - * src/LR0.c (new_state): Recognize the final state by the fact it - is reached by eoftoken. - (insert_start_shifting_state, insert_eof_shifting_state) - (insert_accepting_state, augment_automaton): Remove, since now - these states are automatically computed from the initial state. - (generate_states): Adjust. - * src/print.c: When reporting a rule number to the user, substract - 1, so that the axiom rule is rule 0, and the first user rule is 1. - * src/reduce.c: Likewise. - * src/print_graph.c (print_core): For the time being, just as for - the report, depend upon --trace-flags to dump the full set of - items. - * src/reader.c (readgram): Once the grammar read, insert the rule - 0: `$axiom: START-SYMBOL $'. - * tests/set.at: Adjust: rule 0 is now displayed, and since the - number of the states has changed (the final state is no longer - necessarily the last), catch up. - * tests/regression.at: Partly catch up. - - 2001-12-27 Akim Demaille * src/LR0.c (new_state): Recognize the final state by the fact it @@ -93,7 +252,6 @@ Adjust expectations. When yyungeting, be sure to use a valid yylloc: use last_yylloc. - 2001-12-27 Akim Demaille * configure.in: Check the protos of strchr ans strspn. @@ -103,7 +261,6 @@ * lib/strchr.c: New. * src/reader.c (symbols_save): Use strchr. - 2001-12-27 Akim Demaille * src/print.c, src/print_graph.c (escape): New. @@ -112,7 +269,6 @@ reductions in green. Prefer high to wide: output the state number on a line of its own. - 2001-12-27 Akim Demaille * src/state.h, src/state.c (reductions_new): New. @@ -123,7 +279,6 @@ * src/print.c (print_reductions, print_actions): Adjust. * src/output.c (action_row): Adjust. - 2001-12-27 Akim Demaille * src/state.h, src/state.c (errs_new, errs_dup): New. @@ -133,7 +288,6 @@ * src/output.c (output_actions, action_row): Adjust. * src/conflicts.c (resolve_sr_conflict): Adjust. - 2001-12-27 Akim Demaille * src/lalr.c (set_goto_map, initialize_F): Use SHIFT_SYMBOL. @@ -149,30 +303,25 @@ (print_actions): here. * src/print_graph.c (print_actions): Remove dead code. - 2001-12-27 Akim Demaille * src/reader.c (copy_dollar, copy_at): Better checking of `n' in `$n' and `@n'. - 2001-12-27 Akim Demaille * src/lalr.c (add_lookback_edge): Use state_t instead of ints. (build_relations): Adjust. - 2001-12-27 Akim Demaille * src/lalr.c (set_goto_map): Remove a wrong but benign loop duplication. - 2001-12-27 Akim Demaille * src/reader.c (packgram): Catch nitems overflows. - 2001-12-27 Akim Demaille * src/files.c, src/files.h (guard_obstack): Remove. @@ -183,7 +332,6 @@ As a voluntary consequence, using braces around guards is now mandatory. - 2001-12-27 Akim Demaille * src/gram.h (rule_t): `guard' and `guard_line' are new members. @@ -232,7 +380,6 @@ of a integer, and nlookaheads instead of the following state's lookaheadsp. - 2001-12-27 Akim Demaille * src/conflicts.c (log_resolution, flush_shift) @@ -266,7 +413,6 @@ Use YYNTOKENS only, which is documented, but not YYNTBASE, which is an undocumented synonym. - 2001-12-22 Akim Demaille * src/output.c (output_table_data): Change the prototype to use