mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
Merge remote-tracking branch 'origin/maint'
* 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
This commit is contained in:
2
NEWS
2
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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
|
||||
1
THANKS
1
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
|
||||
|
||||
@@ -17,14 +17,13 @@
|
||||
|
||||
# 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
|
||||
|
||||
2
build-aux/.gitignore
vendored
2
build-aux/.gitignore
vendored
@@ -23,3 +23,5 @@
|
||||
/warn-on-use.h
|
||||
/ylwrap
|
||||
/do-release-commit-and-tag
|
||||
/gnu-web-doc-update
|
||||
/gnupload
|
||||
|
||||
11
cfg.mk
11
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*
|
||||
@@ -22,13 +24,6 @@
|
||||
_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
|
||||
|
||||
|
||||
37
data/c.m4
37
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]])
|
||||
])
|
||||
|
||||
57
data/glr.c
57
data/glr.c
@@ -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_user_pre_prologue[
|
||||
|
||||
b4_null_define
|
||||
]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_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_defines_if([[#include "@basename(]b4_spec_defines_file[@)"]],
|
||||
]b4_defines_if([[#include "@basename(]b4_spec_defines_file[@)"]],
|
||||
[b4_shared_declarations])[
|
||||
|
||||
/* Enabling traces. */
|
||||
|
||||
86
data/yacc.c
86
data/yacc.c
@@ -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
|
||||
|
||||
2
gnulib
2
gnulib
Submodule gnulib updated: 338dd5d436...b42157dd01
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user