]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
2007-01-17 Paolo Bonzini <bonzini@gnu.org>
[bison.git] / ChangeLog
index 1881aa53c4363d9eac5edbb41b8286206f24a7cf..a91b29e33156825d3ac172bfbe6dffecb6bc6389 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,110 @@
+2007-01-17  Paolo Bonzini  <bonzini@gnu.org>
+
+       * bootstrap: Remove occurrences of .#bootmp from the files.
+
+2007-01-17  Akim Demaille  <akim@epita.fr>
+
+       * doc/bison.texinfo (Calc++ Parser): Don't try to alias
+       nonterminals.
+       Use per-type %printer.
+
+2007-01-17  Joel E. Denny  <jdenny@ces.clemson.edu>
+
+       * NEWS, data/c++-skel.m4, data/c++.m4, data/c-skel.m4, data/c.m4,
+       data/glr.c, data/glr.cc, data/lalr1.cc, data/location.cc,
+       djgpp/config.site, src/files.c, src/files.h, src/main.c,
+       src/muscle_tab.c, src/muscle_tab.h, src/parse-gram.y, src/reader.h,
+       src/scan-skel.h, src/scan-skel.l, tests/actions.at, tests/calc.at,
+       tests/glr-regression.at, tests/input.at, tests/local.at,
+       tests/output.at, tests/torture.at: Update copyright to 2007.
+
+2007-01-16  Akim Demaille  <akim@epita.fr>
+
+       * doc/bison.texinfo (Calc++ Parsing Driver): Let "parse" return an
+       error code.
+       (Calc++ Scanner): Exit with failure if we can't open the input
+       file.
+       Accept "-" standing for stdin.
+       (Calc++ Top Level): Print the result only if the parsing was
+       successful.
+
+2007-01-16  Akim Demaille  <akim@epita.fr>
+
+       * data/lalr1.cc (yy_reduce_print_): Add a missing end-of-line.
+
+2007-01-15  Paolo Bonzini  <bonzini@gnu.org>
+       and Joel E. Denny  <jdenny@ces.clemson.edu>
+
+       Clean up %define and %code implementation in M4 some.  Most
+       importantly, rename all related macros to be in the b4_percent_define
+       and b4_percent_code namespaces.  Also, complete support for `.' in
+       %define variable names and %code qualifiers.
+       * data/bison.m4 (b4_check_user_names): Check for special
+       "SKELETON-NAMESPACE(name)" macros instead of using two nested
+       m4_foreach loops.
+       (b4_get_percent_define, b4_get_percent_code): Rename to...
+       (b4_percent_define_get, b4_percent_code_get): ... these.
+       Extend documentation with examples.
+       For SKELETON-NAMESPACE (as documented for b4_check_user_names), use
+       b4_percent_define_skeleton_variables and
+       b4_percent_code_skeleton_qualifiers.
+       Expect any value for the %define variable `foo' to be stored in the
+       macro named `b4_percent_define(foo)'; expect any %code blocks for the
+       qualifier `foo' to be stored in a macro named `b4_percent_code(foo)';
+       expect any unqualified %code blocks to be stored in a macro named
+       `b4_percent_code_unqualified'.
+       Use m4_indir so that %define variable names and %code qualifiers can
+       contain `.', which is allowed by the grammar parser.
+       (b4_percent_define_default): New macro to set a default value for a
+       %define variable.
+       (m4_wrap): Update wrapped code, and fix some underquoting.
+       (b4_check_user_names_wrap): Update and define outside the m4_wrap.
+       Expect grammar uses of %define variables and %code qualifiers to be
+       defined in b4_percent_define_user_variables and
+       b4_percent_code_user_qualifiers.
+       * data/c++.m4: Use b4_percent_define_default rather than
+       m4_define_default.  Fix some underquoting.  Skeleton usage of %define
+       variable define_location_comparison now implies skeleton usage of
+       %define variable filename_type.
+       * data/glr.c, data/glr.cc, data/lalr1.cc, data/location.cc,
+       data/push.c, data/yacc.c: Update macro names.
+       * src/parse-gram.y (prologue_declaration, grammar_declaration): Update
+       muscle names.
+
+2007-01-14  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
+
+       DJGPP specific issues.
+
+       * djgpp/config.site: Set ac_cv_path_mkdir to a sane DJGPP specific
+       default.  Set gl_cv_absolute_wctype_h to a sane DJGPP specific default.
+
+2007-01-09  Joel E. Denny  <jdenny@ces.clemson.edu>
+
+       * tests/glr-regression.at: Use AT_PARSER_CHECK rather than AT_CHECK to
+       run parsers in all tests so that Valgrind is invoked during
+       maintainer-check-valgrind.
+       (Duplicate representation of merged trees): Free all semantic values.
+       (Duplicated user destructor for lookahead): Likewise.
+
+2007-01-09  Joel E. Denny  <jdenny@ces.clemson.edu>
+
+       * tests/local.at (AT_PARSER_CHECK): Add a PRE argument to specify a
+       command-line prefix.
+       * tests/torture.at (Exploding the Stack Size with Alloca): Stderr is
+       ignored, so use that PRE to set --log-fd=1 in VALGRIND_OPTS so we don't
+       miss Valgrind messages.
+       (Exploding the Stack Size with Malloc): Likewise.
+
+2007-01-09  Joel E. Denny  <jdenny@ces.clemson.edu>
+
+       Ignore YYSTACK_USE_ALLOCA for push parsers since the stacks can't be
+       locals.  Reported by Juan Manuel Guerrero at
+       <http://lists.gnu.org/archive/html/bug-bison/2007-01/msg00000.html>.
+       * data/push.c: Enclose the #ifdef YYSTACK_USE_ALLOCA in b4_push_if.
+       Fix some indentation also.
+       * tests/torture.at (Exploding the Stack Size with Alloca): Add comment
+       explaining this issue.
+
 2007-01-09  Paolo Bonzini  <bonzini@gnu.org>
        and Joel E. Denny  <jdenny@ces.clemson.edu>
 
        * src/parse-gram.y (prologue_declaration): Use muscle_code_grow rather
        than prologue_augment for prologue parsing so you don't need prologue
        obstacks.
-       (grammar_declaration): Use `braceless' instead of "{...}" so that
-       braces are already stripped and code is escaped with digraphs.
+       (grammar_declaration): For %union RHS, use `braceless' instead of
+       "{...}" so that braces are already stripped and code is escaped with
+       digraphs.
        * src/reader.c (prologue_augment): Remove.
        (reader): Remove initialization of pre_prologue_obstack and
        post_prologue_obstack.
        b4_check_percent_code_qualifiers.  Use b4_get_percent_code.
        * data/glr.cc, data/lalr1.cc: Likewise, and use b4_get_percent_define.
        (b4_parser_class_name, b4_namespace): Define these using
-       b4_get_percent_define for parser_class_name and namespace.  Normally
-       this would be a bad idea since there might be cases when the variables
-       aren't used, but these variables are too pervasive in these skeletons
-       for that to be a problem.
+       b4_get_percent_define for parser_class_name and namespace.
        * data/location.cc: Use b4_get_percent_define.
        * data/push.c: Don't use b4_check_percent_define_variables and
        b4_check_percent_code_qualifiers.  Use b4_get_percent_code.
        * data/glr.c, data/glr.cc, data/lalr1.cc, data/location.cc,
        data/push.c, data/yacc.c: Likewise, and replace m4_divert(0) with
        m4_divert_push(0) and m4_divert_pop(0).
-       * data/output.c (output_skeleton): Don't add an m4_divert_push(0) and
+       * src/output.c (output_skeleton): Don't add an m4_divert_push(0) and
        an m4_wrap([m4_divert_pop(0)]) to the M4.  Diversion -1, which is
        pushed and popped by m4sugar, should be first on the stack.