]> git.saurik.com Git - bison.git/blobdiff - ChangeLog
* src/getargs.c (usage): Rework to use conventions similar to
[bison.git] / ChangeLog
index 16802bb43d374b930ec4e930a77dab954026f874..ff662fe7c58a576298da03f02732ea95fd989d01 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,133 @@
+2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * src/getargs.c (usage): Rework to use conventions similar to
+       coreutils, to make translation a bit easier and the code a bit
+       smaller.  Problem reported by Tim Van Holder.
+
+2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Use some of gnulib's new modules, taken from coreutils.
+
+       * bootstrap: Sync from coreutils, except add support for gnulib_files.
+       * bootstrap.conf: New file.
+       (gnulib_modules): Add configmake, inttypes, unistd.
+       (XGETTEXT_OPTIONS): Add complain, complain_at,
+       fatal, fatal_at, warn, warn_at, unexpected_end.
+       * configure.ac (AC_CONFIG_HEADERS): config.h is now in lib, not here.
+       (gl_USE_SYSTEM_EXTENSIONS): Remove; gl_EARLY now does this.
+       (gl_EARLY): Add.
+       (AM_STDBOOL_H): Remove; gl_INIT now dows this.
+       (gl_INIT): Add
+       (GNULIB_AUTOCONF_SNIPPET): Remove.
+       (AM_GNU_GETTEXT): Add; require formatstring macros since that's
+       the pickiest.
+       * lib/.cvsignore: Add inttypes_.h.
+       * lib/Makefile.am: Include gnulib.mk first so we can append to it.
+       (AM_CFLAGS): Add WERROR_CFLAGS, to be more like coreutils.
+       (BUILT_SOURCES, EXTRA_DIST, MOSTLYCLEANFILES): Remove
+       no-longer-necessary initializations.
+       (lib_SOURCES): Remove, replacing by libbison_a_SOURCES.
+       * lib/subpipe.c: Include <unistd.h> unconditionally, now that we
+       use the unistd module.
+       * src/system.h: Likewise.
+       * m4/.cvsignore: Remove *_gl.m4, gnulib.m4, inttypes_h.m4, uintmax_t.m4,
+       ulonglong.m4.  Add gettext.m4, gnulib-cache.m4, gnulib-comp.m4,
+       gnulib-tool.m4, inttypes-h.m4, inttypes-pri.m4, inttypes.m4.
+       * src/Makefile.am (DEFS): Remove, since configmake does this for us.
+       (AM_CPPFLAGS): Remove -I../lib, since Automake does that for us.
+       * src/system.h: Include inttypes.h unconditionally, now that we
+       use the inttypes module.  Don't bother to include stdint.h, since
+       inttypes.h now does that for us.
+       (LOCALEDIR): Remove, now that we use the configmake module.
+       * src/getargs.c: Include configmake.h.
+       * src/main.c: Likewise.
+       * src/output.c: Likewise.
+       * tests/atlocal.in (CPPFLAGS): Include from $abs_top_builddir/lib,
+       not from $abs_top_builddir, since config.h moved.
+
+
+       Port to GCC 2.95.  First two problems reported by Michael Deutschmann in
+       <http://lists.gnu.org/archive/html/bug-bison/2006-09/msg00018.html>.
+
+       * src/parse-gram.y (symbol_declaration): Don't put statements
+       before declarations; it's not portable to C89.
+       * src/scan-code.l (handle_action_at): Likewise.
+
+       * src/scan-code.l: Always initialize braces_level; the old code
+       left it uninitialized and therefore had undefined behavior.
+
+       Don't attempt to redefine 'assert', since it runs afoul of
+       systems where standard headers (mistakenly) include <assert.h>.
+       Instead, define and use our own alternative, called 'aver'.
+       * src/reader.c: Don't include assert.h, since we no longer
+       use assert.
+       * src/scan-code.l: Likewise.
+       * src/system.h (assert): Remove, replacing with....
+       (aver): New function, taking a bool arg.  All uses changed.
+       * src/tables.c (pack_vector): Ensure that aver arg is bool,
+       not merely an integer.
+
+2006-09-15  Bob Rossi  <bob@brasko.net>
+
+       * data/Makefile.am (dist_pkgdata_DATA): Add push.c.
+       * data/c.m4 (YYPUSH): New.
+       (b4_push_if): New macro.  Use it instead of #ifdef YYPUSH.
+       * src/getargs.c (push_parser): New var.
+       * src/getargs.h (push_parser): New declaration.
+       * src/output.c (prepare): Add macro insertion of `push_flag'.
+       * src/parse-gram.y (PERCENT_PUSH_PARSER): New token.
+       (prologue_declaration): Parse %push-parser.
+       * src/scan-gram.l: Scan new PERCENT_PUSH_PARSER token.
+       * tests/calc.at (_AT_CHECK_CALC_ERROR): Add "Return" and "Now" to
+       list of removed lines from the traces observed.
+       (AT_CHECK_CALC_LALR): Added push parser tests.
+
+2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: Version 2.3a.
+       * configure.ac (AC_INIT): Likewise.
+
+       * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Remove
+       "#define YYSTYPE int" that caused "make maintainer-check" to fail
+       due to header ordering dependencies.  I don't know why the #define
+       was there.
+
+       Fix glr.cc and lalr1.cc's use of YYDEBUG so that there's zero
+       runtime cost when YYDEBUG is not defined, and so that some tests
+       that used to fail now work.  Problem and initial suggestion by
+       Paolo Bonzini.
+       * data/c++.m4 (b4_parse_param_cons): Omit leading ','.
+       * data/glr.cc (b4_parser_class_name):
+       Initialize yycdebug_ only if YYDEBUG.  Also, initialize yydebug_.
+       (debug_level, set_debug_level): Affect yydebug_, not ::yydebug.
+       (yydebug_) [YYDEBUG]: New member.
+       (yycdebug_): Now defined only if YYDEBUG.
+       * data/lalr1.cc (yydebug_, yycdebug_): Now defined only if YYDEBUG.
+       (YYCDEBUG) [!YYDEBUG]: Don't use yydebug_ and yycdebug_.
+       (b4_parser_class_name): Initialize yydebug_ and yycdebug_ only
+       if YYYDEBUG.
+       (debug_stream, set_debug_stream, debug_level, set_debug_level):
+       Define only if YYDEBUG.
+       * tests/calc.at (_AT_DATA_CALC_Y) [!YYDEBUG]: Omit call to
+       set_debug_level.
+       * tests/regression.at (_AT_DATA_DANCER_Y) [!YYDEBUG]: Likewise.
+       * tests/calc.at (AT_CHECK_CALC_GLR_CC): Uncomment calls to
+       AT_CHECK_CALC_GLR_CC that are working now.
+
+2006-09-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * data/glr.cc (YYERROR_VERBOSE, YYTOKEN_TABLE): Remove.
+       We don't need them in glr.cc, and glr.c defines them.
+       Defining YYERROR_VERBOSE to 0 here breaks glr.c, since glr.c
+       assumes that defining it to anything is the same as defining
+       it to 1.  Problem reported by Paolo Bonzini.
+
+2006-09-12  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
+
+       * data/c.m4 (b4_null, b4_case): Define.
+       * src/output.c (prepare_symbols): Use b4_null.
+       (user_actions_output): Use b4_case.
+
 2006-09-11  Paul Eggert  <eggert@cs.ucla.edu>
 
        * data/glr.c (b4_shared_declarations): Put start-header first,