]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
Now that states have a complete set of members, the linked list of
[bison.git] / ChangeLog
index c9a62be7c2aea2c248b2534664719a72ec95029c..d47c6480098b87963a847ebcfd43a1d2fea970ef 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,92 @@
+2001-12-10  Akim Demaille  <akim@epita.fr>
+
+       Now that states have a complete set of members, the linked list of
+       reductions is useless: just fill directly the state's reductions
+       member.
+
+       * src/state.h (struct reductions): Remove member `number' and
+       `next'.
+       * src/LR0.c (first_reduction, last_reduction): Remove.
+       (save_reductions): Don't link the new reductions, store them in
+       this_state.
+       * src/lalr.c (set_state_table): No need to attach reductions to
+       states, it's already done.
+       * src/output.c (output_actions): No longer free the shifts, then
+       the reductions, then the states: free all the states and their
+       members.
+
+       
+2001-12-10  Akim Demaille  <akim@epita.fr>
+
+       * src/options.c (OPTN, DRTV, BOTH): New.
+       (option_table): Use them.
+
+       
+       * src/muscle_tab.c: Don't include xalloc.h and string.h: that's
+       the job of system.h.
+       * src/options.c: Don't include stdio.h and xalloc.h for the same
+       reasons.
+
+       
+2001-12-10  Akim Demaille  <akim@epita.fr>
+
+       * src/output.c (output, prepare): Make sure the values of the
+       muscles `action' and `prologue' are 0-terminated.
+
+2001-12-10  Akim Demaille  <akim@epita.fr>
+
+       Clean up GCC warnings.
+
+       * src/reader.c (copy_action): `buf' is not used.
+       (parse_skel_decl): Be static.
+       * src/muscle_tab.c (mhash1, mhash2, muscle_insert): Preserve `const'.
+       * src/options.h (create_long_option_table): Have a real prototype.
+       * lib/hash.c, lib/hash.h (hash_insert, hash_insert_at, hash_delete)
+       (hash_delete_at): Return const void *.
+       Adjust casts to preserve the const.
+
+2001-12-10  Akim Demaille  <akim@epita.fr>
+
+       * configure.in: Require 2.52g.
+       M4 is not needed, but AUTOM4TE is.
+       * m4/m4.m4: Remove.
+       * tests/Makefile.am: Adjust.
+
+       
+2001-12-10  Akim Demaille  <akim@epita.fr>
+
+       One structure for states is enough, even though theoretically
+       there are LR(0) states and LALR(1) states.
+
+       * src/lalr.h (state_t): Remove.
+       (state_table): Be state_t **, not state_t *.
+       * src/state.h (core, CORE_ALLOC): Rename as...
+       (state_t, STATE_ALLOC): this.
+       Add the LALR(1) members: shifts, reductions, errs.
+       * src/LR0.c (state_table): Rename as...
+       (state_hash): this, to avoid name clashes with the global
+       `state_table'.
+       * src/print_graph.c, src/LR0.c, src/LR0.h, src/conflicts.c
+       * src/lalr.c, src/lalr.h, src/output.c, src/print.c: Adjust.
+
+       
+2001-12-10  Akim Demaille  <akim@epita.fr>
+
+       Bison dumps core on bash.y.
+       Reported by Pascal Bart.
+
+       * src/warshall.c (bitmatrix_print): New.
+       (TC): Use it.
+       When performing a transitive closure R(i, j) && R(j, k) => R(i, k),
+       j must be the outer loop.
+       * tests/regression.at (Broken Closure): New.
+
+2001-12-05  Akim Demaille  <akim@epita.fr>
+
+       * tests/atlocal.in (CPPFLAGS): Do not leave a space between -I and
+       its argument.
+       Reported by Peter Hámorský.
+
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/conflicts.c (err_table): Remove.
@@ -6,7 +95,6 @@
        Rename as...
        (state_t.reductions, state_t.shifts): this.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/reduce.c (reduce_grammar_tables): No longer disable the
        the `line' member of rule_t.
        * src/gram.c (dummy, rline): Remove, unused.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/output.c (pack_vector): Use assert, not berror.
        * src/closure.c, src/closure.h (itemsetsize): Rename as...
        (nitemset): for consistency with the rest of the project.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/closure.c (print_closure): Improve.
        (closure): Use it for printing input and output.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/closure.c (FIRSTS, FDERIVES): Adjust to reality: they are
        indexed by nonterminals.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/warshall.c (TC, RTC): De-obsfucate (source reduced to 22% of
        what it was!).
        * src/warshall.h: Remove accidental duplication of the content.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/closure.c (set_fderives): De-obfuscate.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/closure.c (print_firsts, print_fderives): De-obfuscate.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        * src/closure.c (set_firsts): De-obfuscate.
        using the good o' techniques: arrays not pointers, variable
        locality, BITISSET, RESETBIT etc.
 
-       
 2001-12-05  Akim Demaille  <akim@epita.fr>
 
        Pessimize the code to simplify it: from now on, all the states