]> git.saurik.com Git - bison.git/commitdiff
Merge remote-tracking branch 'origin/maint'
authorAkim Demaille <akim@lrde.epita.fr>
Wed, 13 Jun 2012 19:03:29 +0000 (21:03 +0200)
committerAkim Demaille <akim@lrde.epita.fr>
Wed, 13 Jun 2012 19:03:29 +0000 (21:03 +0200)
* origin/maint:
  skeletons: factor yacc.c and glr.c.
  glr.c: minor refactoring.
  tests: remove all the -On flags.
  maint: fix spello.
  maint: improve release procedure instructions.
  gnulib: update readme-release.
  maint: cfg.mk: manual title.
  maint: cfg.mk: simplify
  maint: post-release administrivia

Conflicts:
NEWS
bootstrap.conf

NEWS
README-hacking
THANKS
bootstrap.conf
build-aux/.gitignore
cfg.mk
data/c.m4
data/glr.c
data/yacc.c
gnulib
tests/atlocal.in

diff --git a/NEWS b/NEWS
index 8c79bb7a4ab4b85e1eb1905528dd127fc4c15580..79fdb8ef5418cab9c0ecf2278c4866944dc256dd 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -160,7 +160,7 @@ GNU Bison NEWS
   This includes warnings with some compilers, unexpected behavior of tools
   such as diff, warning messages from the test suite itself, etc.
 
-*** The install-pdf target work properly:
+*** The install-pdf target works properly:
 
   Running "make install-pdf" (or -dvi, -html, -info, and -ps) no longer
   halts in the middle of its course.
index 5d9314b7e0b4dc929514a8507c954f82e76a1e42..3ba1d4f94d26d07504943aa78c184e8ff3f5224b 100644 (file)
@@ -258,25 +258,10 @@ copyright statement for each Bison file, check the copyright statements
 that the skeletons insert into generated parsers, and check all
 occurrences of PACKAGE_COPYRIGHT_YEAR in configure.ac.
 
-** Update NEWS
-The version number, *and* the date of the release (including for
-betas).
+** Update NEWS, commit and tag.
+See do-release-commit-and-tag in README-release.
 
-** Mention the release name in a commit message
-Should have an entry similar to "Version 2.3b.".
-
-** Tag the release
-Before Bison will build with the right version number, you must tag
-the release in git.  Do this after all other changes.  The command is
-similar to:
-
-  git tag -a v2.3b -m "Bison 2.3b."
-
-** Push
-Once "make distcheck" passes, push your changes and the tag.
-"git push" without arguments will not push the tag.
-
-** make alpha, beta, or release
+** make alpha, beta, or stable
 See README-release.
 
 ** Upload
@@ -297,8 +282,8 @@ where F125BDF3 should be replaced with your key ID.
 *** Using gnupload
 You need "ncftp".
 
-At the end "make release" (or alpha/beta) will display the prodecure
-to run.  Just copy and paste it in your shell.
+At the end "make stable" (or alpha/beta) will display the procedure to
+run.  Just copy and paste it in your shell.
 
 *** By hand
 
@@ -369,7 +354,8 @@ function 'index', once for the table of contents); you can ignore this
 issue.
 
 ** Announce
-To generate a template announcement file:
+The "make stable" (or alpha/beta) command just created a template,
+$HOME/announce-bison-X.Y.  Otherwise, to generate it, run:
 
   make RELEASE_TYPE=alpha gpg_key_ID=F125BDF3 announcement
 
@@ -389,11 +375,12 @@ newsgroup by sending email to compilers@iecc.com.  Do not make any Cc as
 the moderator will throw away anything cross-posted or Cc'ed.  It really
 needs to be a separate message.
 
-** Bump the version number
-In configure.ac.  Run "make".  So that developers don't accidentally add new
-items to the old NEWS entry, create a new empty NEWS entry something like:
+** Prepare NEWS
+So that developers don't accidentally add new items to the old NEWS
+entry, create a new empty entry in line 3 (without the two leading
+spaces):
 
-  Changes in version ?.? (????-??-??):
+  * Noteworthy changes in release ?.? (????-??-??) [?]
 
 Push these changes.
 
diff --git a/THANKS b/THANKS
index 9d0af4bee40b2599901c4ef521a7a259f86ee6b8..c0c274cb448f9dccad3ddcb95d47c1f5eaa02e90 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -43,6 +43,7 @@ Frank Heckenbach          frank@g-n-u.de
 Frans Englich             frans.englich@telia.com
 Georg Sauthoff            gsauthof@TechFak.Uni-Bielefeld.DE
 George Neuner             gneuner2@comcast.net
+Gilles Espinasse          g.esp@free.fr
 Goran Uddeborg            goeran@uddeborg.se
 Guido Trentalancia        trentalg@aston.ac.uk
 H. Merijn Brand           h.m.brand@hccnet.nl
index 6cdb017c0502f495ec0b66c38f3de4ea70321c8a..cff387f98b94a16404b0ac565cecc64887e7713a 100644 (file)
 
 # gnulib modules used by this package.
 gnulib_modules='
-  announce-gen argmatch assert calloc-posix close closeout config-h c-strcase
+  argmatch assert calloc-posix close closeout config-h c-strcase
   configmake
   dirname
-  do-release-commit-and-tag
-  error extensions fdl fopen-safer gendocs getopt-gnu
+  error extensions fdl fopen-safer getopt-gnu
   gettext git-version-gen gitlog-to-changelog
   gpl-3.0 hash inttypes isnan javacomp-script
-  javaexec-script ldexpl maintainer-makefile malloc-gnu
+  javaexec-script ldexpl malloc-gnu
   mbswidth obstack perror progname
   quote quotearg
   readme-release
index 69a6bdd759628510433223734b669a63f3ed5586..2bd44f622db229a971cd6d84727896d64da3ca16 100644 (file)
@@ -23,3 +23,5 @@
 /warn-on-use.h
 /ylwrap
 /do-release-commit-and-tag
+/gnu-web-doc-update
+/gnupload
diff --git a/cfg.mk b/cfg.mk
index 6ccef9c92ac3da4292f528363b9e77f1d8a0886d..e29b1ddfe6ccb5881e10922490b260f692a63e2a 100644 (file)
--- a/cfg.mk
+++ b/cfg.mk
@@ -1,5 +1,4 @@
 # Customize maint.mk                           -*- makefile -*-
-
 # Copyright (C) 2008-2012 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
@@ -15,6 +14,9 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+# Used in maint.mk's web-manual rule
+manual_title = The Yacc-compatible Parser Generator
+
 # It's useful to run maintainer-*check* targets during development, but we
 # don't want to wait on a recompile because of an update to $(VERSION).  Thus,
 # override the _is-dist-target from GNUmakefile so that maintainer-*check*
 _is-dist-target = $(filter-out %clean maintainer-check% maintainer-%-check, \
   $(filter maintainer-% dist% alpha beta major,$(MAKECMDGOALS)))
 
-# Use alpha.gnu.org for alpha and beta releases.
-# Use ftp.gnu.org for major releases.
-gnu_ftp_host-alpha = alpha.gnu.org
-gnu_ftp_host-beta = alpha.gnu.org
-gnu_ftp_host-major = ftp.gnu.org
-gnu_rel_host = $(gnu_ftp_host-$(RELEASE_TYPE))
-
 url_dir_list = \
   ftp://$(gnu_rel_host)/gnu/bison
 
index 0d30a4966a271cff0e9bbf0cf741880590d8d85b..2b7e9d63c9523372a5a78807e56eb1ec36db8f7c 100644 (file)
--- a/data/c.m4
+++ b/data/c.m4
@@ -567,3 +567,40 @@ b4_locations_if([, yylocationp])[]b4_user_args[);
   YYFPRINTF (yyoutput, ")");
 }]dnl
 ])
+
+## -------------- ##
+## Declarations.  ##
+## -------------- ##
+
+# b4_declare_yylstype
+# ------------------
+# Declaration that might either go into the header (if --defines)
+# or open coded in the parser body.  Declare YYSTYPE and YYLTYPE.
+m4_define([b4_declare_yylstype],
+[[#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+]m4_ifdef([b4_stype],
+[[typedef union ]b4_union_name[
+{
+]b4_user_stype[
+} YYSTYPE;
+# define YYSTYPE_IS_TRIVIAL 1]],
+[m4_if(b4_tag_seen_flag, 0,
+[[typedef int YYSTYPE;
+# define YYSTYPE_IS_TRIVIAL 1]])])[
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
+# define YYSTYPE_IS_DECLARED 1
+#endif]b4_locations_if([[
+
+#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
+typedef struct YYLTYPE
+{
+  int first_line;
+  int first_column;
+  int last_line;
+  int last_column;
+} YYLTYPE;
+# define yyltype YYLTYPE /* obsolescent; will be withdrawn */
+# define YYLTYPE_IS_DECLARED 1
+# define YYLTYPE_IS_TRIVIAL 1
+#endif]])
+])
index 8f77aa61d330b619770295cfd8bfe26a90b4661e..1463a9a7f6def1f343befbcd466b2dfe4ce4b9fa 100644 (file)
@@ -162,6 +162,21 @@ m4_define([b4_rhs_location],
 [(b4_rhs_data([$1], [$2]).yyloc)])
 
 
+## -------------- ##
+## Declarations.  ##
+## -------------- ##
+
+# b4_shared_declarations
+# ----------------------
+# Declaration that might either go into the header (if --defines)
+# or open coded in the parser body.
+m4_define([b4_shared_declarations],
+[b4_percent_code_get([[requires]])[
+]b4_token_enums(b4_tokens)[
+]b4_declare_yylstype[
+]b4_percent_code_get([[provides]])[]dnl
+])
+
 
 ## -------------- ##
 ## Output files.  ##
@@ -191,47 +206,11 @@ m4_if(b4_prefix, [yy], [],
 #define yylloc  b4_prefix[]lloc])[
 
 /* Copy the first part of user declarations.  */
-]b4_user_pre_prologue
-
-b4_null_define
-
-dnl # b4_shared_declarations
-dnl # ----------------------
-dnl # Declaration that might either go into the header (if --defines)
-dnl # or open coded in the parser body.
-m4_define([b4_shared_declarations],
-[b4_percent_code_get([[requires]])[]dnl
+]b4_user_pre_prologue[
 
-b4_token_enums(b4_tokens)
-
-[#ifndef YYSTYPE
-]m4_ifdef([b4_stype],
-[[typedef union ]b4_union_name[
-{
-]b4_user_stype[
-} YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1]],
-[m4_if(b4_tag_seen_flag, 0,
-[[typedef int YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1]])])[
-#endif
-]b4_locations_if([[
-#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
-typedef struct YYLTYPE
-{
-  int first_line;
-  int first_column;
-  int last_line;
-  int last_column;
-} YYLTYPE;
-# define YYLTYPE_IS_DECLARED 1
-# define YYLTYPE_IS_TRIVIAL 1
-#endif
-]])[
-]b4_percent_code_get([[provides]])[]dnl
-])
+]b4_null_define[
 
-b4_defines_if([[#include "@basename(]b4_spec_defines_file[@)"]],
+]b4_defines_if([[#include "@basename(]b4_spec_defines_file[@)"]],
               [b4_shared_declarations])[
 
 /* Enabling traces.  */
index 0cc17f3367f0f2402e8c8a45d9c1eab4adbb5b34..922a4ebec9d1b365fcd39b07dd8de461ebefb247 100644 (file)
@@ -160,9 +160,9 @@ m4_define([b4_rhs_location],
           [(yylsp@{b4_subtract([$2], [$1])@})])
 
 
-## ------------------ ##
-## Parser variables.  ##
-## ------------------ ##
+## -------------- ##
+## Declarations.  ##
+## -------------- ##
 
 # b4_declare_scanner_communication_variables
 # ------------------------------------------
@@ -226,10 +226,9 @@ m4_define([b4_declare_parser_state_variables], [b4_pure_if([[
     yytype_int16 *yyes;
     YYSIZE_T yyes_capacity;]])])
 
-
-## --------------------------------------------------------- ##
-## Defining symbol actions, e.g., printers and destructors.  ##
-## --------------------------------------------------------- ##
+## -------------- ##
+## Output files.  ##
+## -------------- ##
 
 # We do want M4 expansion after # for CPP macros.
 m4_changecom()
@@ -288,37 +287,10 @@ m4_if(b4_prefix, [yy], [],
 # define YYTOKEN_TABLE ]b4_token_table[
 #endif
 
-]b4_percent_code_get([[requires]])[]dnl
-
-b4_token_enums_defines(b4_tokens)[
-
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-]m4_ifdef([b4_stype],
-[[typedef union ]b4_union_name[
-{
-]b4_user_stype[
-} YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1]],
-[m4_if(b4_tag_seen_flag, 0,
-[[typedef int YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1]])])[
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-#endif]b4_locations_if([[
-
-#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
-typedef struct YYLTYPE
-{
-  int first_line;
-  int first_column;
-  int last_line;
-  int last_column;
-} YYLTYPE;
-# define yyltype YYLTYPE /* obsolescent; will be withdrawn */
-# define YYLTYPE_IS_DECLARED 1
-# define YYLTYPE_IS_TRIVIAL 1
-#endif]])b4_push_if([[
-
+]b4_percent_code_get([[requires]])[
+]b4_token_enums_defines(b4_tokens)[
+]b4_declare_yylstype[
+]b4_push_if([[
 #ifndef YYPUSH_DECLS
 #  define YYPUSH_DECLS
 struct yypstate;
@@ -2008,40 +1980,10 @@ b4_copyright([Bison interface for Yacc-like parsers in C])dnl
 
 b4_percent_code_get([[requires]])[]dnl
 
-b4_token_enums_defines(b4_tokens)
-
-[#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-]m4_ifdef([b4_stype],
-[[typedef union ]b4_union_name[
-{
-]b4_user_stype[
-} YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1]],
-[m4_if(b4_tag_seen_flag, 0,
-[[typedef int YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1]])])[
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-#endif
-
-]b4_pure_if([], [[extern YYSTYPE ]b4_prefix[lval;]])
-
-b4_locations_if(
-[#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
-typedef struct YYLTYPE
-{
-  int first_line;
-  int first_column;
-  int last_line;
-  int last_column;
-} YYLTYPE;
-# define yyltype YYLTYPE /* obsolescent; will be withdrawn */
-# define YYLTYPE_IS_DECLARED 1
-# define YYLTYPE_IS_TRIVIAL 1
-#endif
-
-]b4_pure_if([], [[extern YYLTYPE ]b4_prefix[lloc;]])
-)dnl b4_locations_if
+b4_token_enums_defines(b4_tokens)[
+]b4_declare_yylstype[
+]b4_pure_if([], [[extern YYSTYPE ]b4_prefix[lval;
+]b4_locations_if([[extern YYLTYPE ]b4_prefix[lloc;]])])dnl
 b4_push_if([[
 #ifndef YYPUSH_DECLS
 #  define YYPUSH_DECLS
diff --git a/gnulib b/gnulib
index 338dd5d4362fdf5fb29b843d4d8a8f845bc750de..b42157dd01e3243646f5a8270c09ee125a8aca21 160000 (submodule)
--- a/gnulib
+++ b/gnulib
@@ -1 +1 @@
-Subproject commit 338dd5d4362fdf5fb29b843d4d8a8f845bc750de
+Subproject commit b42157dd01e3243646f5a8270c09ee125a8aca21
index 7e4f2e28b5c44dc0dc18e93fb531f173b12c3f64..ef31d9fced1f19665ff711938f11b9a60dde29dd 100644 (file)
@@ -29,9 +29,11 @@ CPPFLAGS="-I$abs_top_builddir/lib @CPPFLAGS@"
 # Is the compiler GCC?
 GCC='@GCC@'
 
-# We want no optimization.
-  O0CFLAGS=`echo '@CFLAGS@'   | sed 's/-O[0-9] *//'`
-O0CXXFLAGS=`echo '@CXXFLAGS@' | sed 's/-O[0-9] *//'`
+# We want no optimization, as they uncover warnings (therefore,
+# failures) about uninitialized variables in the test suite.  FIXME:
+# fix the warnings, not the flags.
+  O0CFLAGS=`echo '@CFLAGS@'   | sed 's/-O[0-9s] *//g'`
+O0CXXFLAGS=`echo '@CXXFLAGS@' | sed 's/-O[0-9s] *//g'`
 
 # Sometimes a test group needs to ignore gcc warnings, so it locally
 # sets CFLAGS to this.