]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
Avoid capturing variables too easily.
[bison.git] / ChangeLog
index 1ab4c95edd6df458d22b9ca6af5053551b34873d..9890b5fabff5d640a7c6df1be6d34e5db34c1d6e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,117 @@
+2008-12-01  Akim Demaille  <demaille@gostai.com>
+
+       Avoid capturing variables too easily.
+       * src/muscle_tab.h (MUSCLE_INSERT_BOOL, MUSCLE_OBSTACK_SGROW): Use
+       v__ and p__ instead of v and p.
+
+2008-12-01  Akim Demaille  <demaille@gostai.com>
+
+       Remove spurious empty line before syncline.
+       * data/bison.m4 (b4_syncline): Don't output an empty line before
+       the output.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Convert lib/Makefile.am into lib/local.mk.
+       The real problem is rather gnulib.mk, which itself is extracted
+       from a Makefile.am that gnulib expects to the "recursive".  The
+       tool prefix-gnulib-mk converts such a gnulib.mk to be
+       non-recursive.  Also, some AC_SUBST variables need to be adjusted.
+
+       * etc/prefix-gnulib-mk: New.
+       * bootstrap (slurp): Use it to convert further gnulib.mk.
+       No longer try to avoid re-creation of lib/gnulib.mk as the changes
+       are deeper.
+       * lib/Makefile.am: Rename as...
+       * lib/local.mk: this.
+       Adjust to be prefixed.
+       * Makefile.am, configure.ac: Adjust.
+       * src/local.mk (AM_CPPFLAGS): Extend it, don't define it.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       s/_FLAGS/FLAGS/.
+       * tests/local.mk (TESTSUITE_FLAGS, AUTOTEST_FLAGS): Rename as...
+       (TESTSUITEFLAGS, AUTOTESTFLAGS): these to compy with the GCS.
+       Reported by Eric Blake.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Use b4_parser_tables_define in glr.cc.
+       * data/glr.c: Use b4_parser_tables_define instead of defining the
+       (deterministic integral) tables by hand.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Use b4_parser_tables_define in Java.
+       * data/java.m4 (b4_typed_parser_table): Rename as...
+       (b4_typed_parser_table_define): this, for consistency.
+       Accept a comment as $4.
+       Move $2 into yy*_.
+       (b4_integral_parser_table): Rename as...
+       (b4_integral_parser_table_define): this.
+       * data/lalr1.java: Adjust all uses.
+       Use b4_parser_tables_define instead of generation by hand.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Prepare the convergence bw C style and Java table generation.
+       * data/bison.m4 (b4_tables_map, b4_tables_declare)
+       (b4_tables_define): Rename as...
+       (b4_integral_parser_tables_map, b4_parser_tables_declare)
+       (b4_parser_tables_define): these.
+       * data/c.m4 (b4_table_define): Rename as...
+       (b4_integral_parser_table_define): this.
+       * data/lalr1.cc: Adjust.
+       (b4_table_define, b4_table_declare): Rename as...
+       (b4_integral_parser_table_define)
+       (b4_integral_parser_table_declare): these.
+       (yyrline_): Move the comment where it is actually used.
+       * data/yacc.c: Adjust.
+       (yyrline): Use b4_integral_parser_table_define.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Regen.
+       * src/parse-gram.h, src/parse-gram.c: Regen.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Factor the generation of the (integral) tables bw yacc.c and lalr1.cc.
+       * data/lalr1.cc (b4_tables_map): Move to...
+       * data/bison.m4: here.
+       Update the comment for yytable during the flight.
+       (b4_tables_declare, b4_tables_define): New.
+       * data/lalr1.cc: Use them.
+       * data/c.m4 (b4_table_define): New.
+       * data/yacc.c: Use b4_tables_define instead of output the tables
+       by hand.
+       * tests/regression.at (Web2c Actions): Adjust the expected output,
+       the order of the tables changed.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Get rid of (yy)rhs and (yy)prhs.
+       These tables are no longer needed in the parsers, and they don't seem to
+       be useful.  They are not documented either.
+
+       * src/output.c (prepare_rules): Get rid of rhs and prhs.
+       Adjust the computation of (yy)r2.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Rule length is unsigned.
+       * src/gram.h, src/gram.c (rule_rhs_length): Return a size_t.
+
+2008-11-26  Akim Demaille  <demaille@gostai.com>
+
+       Get rid of lalr1-split.cc.
+       It was no longer maintainer.
+
+       * data/lalr1-split.cc: Remove.
+       * etc/bench.pl.in (bench_fusion_parser): Remove.
+       Adjust.
+
 2008-11-26  Akim Demaille  <demaille@gostai.com>
 
        Use yy* consistently.
 
        Prefer TESTSUITE_FLAGS.
        TESTSUITEFLAGS is barely readable.
-       
+
        * tests/local.mk (TESTSUITE_FLAGS): Default to $(TESTSUITEFLAGS)
        for backward compatibility.
        Use the former instead of the latter.
        is available from the state stack.  This has two be benefits: two tables
        less in the parser (making it smaller), and a more consistent use of the
        three stacks which will help to fuse them.
-       
+
        * data/yacc.c (yyprhs, yyrhs): Remove.
        (YY_REDUCE_PRINT): Pass yyssp to yy_reduce_print.
        (yy_reduce_print): Take yyssp as argument.
        b4_tables_map.
        The point is to factor the generation of the tables across skeletons.
        This is language dependant.
-       
+
        * data/c.m4 (b4_comment_): New.
        Should be usable to define how to generate tables independently of
        the language.
        (Option Cross Key): Implement FIXME: listing directives also.
        * build-aux/cross-options.pl:  Read from <STDIN> rather than <>.
        (Short Option): Special case -d.  Put arguments inside @option.
-       (Bison Directive): Add column, automatically extracted from 
+       (Bison Directive): Add column, automatically extracted from
        src/scan-gram.l (actual name passed as the first argument)
        with special case for %define.
        * doc/local.mk (doc/cross-options.texi): Pass src/scan-gram.l