X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/6ab1adbe1e533119e8a70bb34dbb13c6c8b5e793..44494bf68403d6a566dc408bcfecaf99fc844b06:/ChangeLog?ds=sidebyside diff --git a/ChangeLog b/ChangeLog index c6a85e05..9890b5fa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,177 @@ +2008-12-01 Akim Demaille + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + 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 + + Regen. + * src/parse-gram.h, src/parse-gram.c: Regen. + +2008-11-26 Akim Demaille + + 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 + + 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 + + Rule length is unsigned. + * src/gram.h, src/gram.c (rule_rhs_length): Return a size_t. + +2008-11-26 Akim Demaille + + 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 + + Use yy* consistently. + * data/glr.c: Now that yyrhs no longer exists as a global + variable, rename local "rhs" variables into "yyrhs" for + consistency. + +2008-11-25 Akim Demaille + + Get rid of yyrhs and yyprhs in glr.c. + * data/glr.c (yyrhs, yyprhs): Remove. + Instead, use the state stack and yystos. + +2008-11-25 Akim Demaille + + Flag glr tests. + * tests/local.at (_AT_BISON_OPTION_PUSHDEFS): If glr, declare it + as an Autotest keyword. + +2008-11-25 Akim Demaille + + 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. + +2008-11-25 Akim Demaille + + Get rid of yyrhs and yyprhs in larl1.java. + * data/lalr1.java (yyrhs_, yyprhs_): Remove. + (yy_reduce_print): Rather, use yystos_ and the state stack. + +2008-11-25 Akim Demaille + + Formatting changes. + +2008-11-25 Akim Demaille + + Get rid of yyrhs and yyprhs in yacc.c. + They were used to get the symbol types, given a rule number, when + displaying the top of the stack before a reduction. But the symbol type + 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. + Use it, together with yystos, to get the symbol type. + * tests/regression.at (Web2c Report): Remove these tables from the + expected output. + 2008-11-25 Akim Demaille 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. @@ -63,7 +231,7 @@ (Option Cross Key): Implement FIXME: listing directives also. * build-aux/cross-options.pl: Read from 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