mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-21 10:13:03 +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
|
This includes warnings with some compilers, unexpected behavior of tools
|
||||||
such as diff, warning messages from the test suite itself, etc.
|
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
|
Running "make install-pdf" (or -dvi, -html, -info, and -ps) no longer
|
||||||
halts in the middle of its course.
|
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
|
that the skeletons insert into generated parsers, and check all
|
||||||
occurrences of PACKAGE_COPYRIGHT_YEAR in configure.ac.
|
occurrences of PACKAGE_COPYRIGHT_YEAR in configure.ac.
|
||||||
|
|
||||||
** Update NEWS
|
** Update NEWS, commit and tag.
|
||||||
The version number, *and* the date of the release (including for
|
See do-release-commit-and-tag in README-release.
|
||||||
betas).
|
|
||||||
|
|
||||||
** Mention the release name in a commit message
|
** make alpha, beta, or stable
|
||||||
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
|
|
||||||
See README-release.
|
See README-release.
|
||||||
|
|
||||||
** Upload
|
** Upload
|
||||||
@@ -297,8 +282,8 @@ where F125BDF3 should be replaced with your key ID.
|
|||||||
*** Using gnupload
|
*** Using gnupload
|
||||||
You need "ncftp".
|
You need "ncftp".
|
||||||
|
|
||||||
At the end "make release" (or alpha/beta) will display the prodecure
|
At the end "make stable" (or alpha/beta) will display the procedure to
|
||||||
to run. Just copy and paste it in your shell.
|
run. Just copy and paste it in your shell.
|
||||||
|
|
||||||
*** By hand
|
*** By hand
|
||||||
|
|
||||||
@@ -369,7 +354,8 @@ function 'index', once for the table of contents); you can ignore this
|
|||||||
issue.
|
issue.
|
||||||
|
|
||||||
** Announce
|
** 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
|
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
|
the moderator will throw away anything cross-posted or Cc'ed. It really
|
||||||
needs to be a separate message.
|
needs to be a separate message.
|
||||||
|
|
||||||
** Bump the version number
|
** Prepare NEWS
|
||||||
In configure.ac. Run "make". So that developers don't accidentally add new
|
So that developers don't accidentally add new items to the old NEWS
|
||||||
items to the old NEWS entry, create a new empty NEWS entry something like:
|
entry, create a new empty entry in line 3 (without the two leading
|
||||||
|
spaces):
|
||||||
|
|
||||||
Changes in version ?.? (????-??-??):
|
* Noteworthy changes in release ?.? (????-??-??) [?]
|
||||||
|
|
||||||
Push these changes.
|
Push these changes.
|
||||||
|
|
||||||
|
|||||||
1
THANKS
1
THANKS
@@ -43,6 +43,7 @@ Frank Heckenbach frank@g-n-u.de
|
|||||||
Frans Englich frans.englich@telia.com
|
Frans Englich frans.englich@telia.com
|
||||||
Georg Sauthoff gsauthof@TechFak.Uni-Bielefeld.DE
|
Georg Sauthoff gsauthof@TechFak.Uni-Bielefeld.DE
|
||||||
George Neuner gneuner2@comcast.net
|
George Neuner gneuner2@comcast.net
|
||||||
|
Gilles Espinasse g.esp@free.fr
|
||||||
Goran Uddeborg goeran@uddeborg.se
|
Goran Uddeborg goeran@uddeborg.se
|
||||||
Guido Trentalancia trentalg@aston.ac.uk
|
Guido Trentalancia trentalg@aston.ac.uk
|
||||||
H. Merijn Brand h.m.brand@hccnet.nl
|
H. Merijn Brand h.m.brand@hccnet.nl
|
||||||
|
|||||||
@@ -17,14 +17,13 @@
|
|||||||
|
|
||||||
# gnulib modules used by this package.
|
# gnulib modules used by this package.
|
||||||
gnulib_modules='
|
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
|
configmake
|
||||||
dirname
|
dirname
|
||||||
do-release-commit-and-tag
|
error extensions fdl fopen-safer getopt-gnu
|
||||||
error extensions fdl fopen-safer gendocs getopt-gnu
|
|
||||||
gettext git-version-gen gitlog-to-changelog
|
gettext git-version-gen gitlog-to-changelog
|
||||||
gpl-3.0 hash inttypes isnan javacomp-script
|
gpl-3.0 hash inttypes isnan javacomp-script
|
||||||
javaexec-script ldexpl maintainer-makefile malloc-gnu
|
javaexec-script ldexpl malloc-gnu
|
||||||
mbswidth obstack perror progname
|
mbswidth obstack perror progname
|
||||||
quote quotearg
|
quote quotearg
|
||||||
readme-release
|
readme-release
|
||||||
|
|||||||
2
build-aux/.gitignore
vendored
2
build-aux/.gitignore
vendored
@@ -23,3 +23,5 @@
|
|||||||
/warn-on-use.h
|
/warn-on-use.h
|
||||||
/ylwrap
|
/ylwrap
|
||||||
/do-release-commit-and-tag
|
/do-release-commit-and-tag
|
||||||
|
/gnu-web-doc-update
|
||||||
|
/gnupload
|
||||||
|
|||||||
11
cfg.mk
11
cfg.mk
@@ -1,5 +1,4 @@
|
|||||||
# Customize maint.mk -*- makefile -*-
|
# Customize maint.mk -*- makefile -*-
|
||||||
|
|
||||||
# Copyright (C) 2008-2012 Free Software Foundation, Inc.
|
# Copyright (C) 2008-2012 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# 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
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# 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
|
# 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,
|
# 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*
|
# 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, \
|
_is-dist-target = $(filter-out %clean maintainer-check% maintainer-%-check, \
|
||||||
$(filter maintainer-% dist% alpha beta major,$(MAKECMDGOALS)))
|
$(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 = \
|
url_dir_list = \
|
||||||
ftp://$(gnu_rel_host)/gnu/bison
|
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, ")");
|
YYFPRINTF (yyoutput, ")");
|
||||||
}]dnl
|
}]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)])
|
[(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. ##
|
## Output files. ##
|
||||||
@@ -191,47 +206,11 @@ m4_if(b4_prefix, [yy], [],
|
|||||||
#define yylloc b4_prefix[]lloc])[
|
#define yylloc b4_prefix[]lloc])[
|
||||||
|
|
||||||
/* Copy the first part of user declarations. */
|
/* 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
|
]b4_defines_if([[#include "@basename(]b4_spec_defines_file[@)"]],
|
||||||
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_shared_declarations])[
|
[b4_shared_declarations])[
|
||||||
|
|
||||||
/* Enabling traces. */
|
/* Enabling traces. */
|
||||||
|
|||||||
86
data/yacc.c
86
data/yacc.c
@@ -160,9 +160,9 @@ m4_define([b4_rhs_location],
|
|||||||
[(yylsp@{b4_subtract([$2], [$1])@})])
|
[(yylsp@{b4_subtract([$2], [$1])@})])
|
||||||
|
|
||||||
|
|
||||||
## ------------------ ##
|
## -------------- ##
|
||||||
## Parser variables. ##
|
## Declarations. ##
|
||||||
## ------------------ ##
|
## -------------- ##
|
||||||
|
|
||||||
# b4_declare_scanner_communication_variables
|
# b4_declare_scanner_communication_variables
|
||||||
# ------------------------------------------
|
# ------------------------------------------
|
||||||
@@ -226,10 +226,9 @@ m4_define([b4_declare_parser_state_variables], [b4_pure_if([[
|
|||||||
yytype_int16 *yyes;
|
yytype_int16 *yyes;
|
||||||
YYSIZE_T yyes_capacity;]])])
|
YYSIZE_T yyes_capacity;]])])
|
||||||
|
|
||||||
|
## -------------- ##
|
||||||
## --------------------------------------------------------- ##
|
## Output files. ##
|
||||||
## Defining symbol actions, e.g., printers and destructors. ##
|
## -------------- ##
|
||||||
## --------------------------------------------------------- ##
|
|
||||||
|
|
||||||
# We do want M4 expansion after # for CPP macros.
|
# We do want M4 expansion after # for CPP macros.
|
||||||
m4_changecom()
|
m4_changecom()
|
||||||
@@ -288,37 +287,10 @@ m4_if(b4_prefix, [yy], [],
|
|||||||
# define YYTOKEN_TABLE ]b4_token_table[
|
# define YYTOKEN_TABLE ]b4_token_table[
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
]b4_percent_code_get([[requires]])[]dnl
|
]b4_percent_code_get([[requires]])[
|
||||||
|
]b4_token_enums_defines(b4_tokens)[
|
||||||
b4_token_enums_defines(b4_tokens)[
|
]b4_declare_yylstype[
|
||||||
|
]b4_push_if([[
|
||||||
#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([[
|
|
||||||
|
|
||||||
#ifndef YYPUSH_DECLS
|
#ifndef YYPUSH_DECLS
|
||||||
# define YYPUSH_DECLS
|
# define YYPUSH_DECLS
|
||||||
struct yypstate;
|
struct yypstate;
|
||||||
@@ -2008,40 +1980,10 @@ b4_copyright([Bison interface for Yacc-like parsers in C])dnl
|
|||||||
|
|
||||||
b4_percent_code_get([[requires]])[]dnl
|
b4_percent_code_get([[requires]])[]dnl
|
||||||
|
|
||||||
b4_token_enums_defines(b4_tokens)
|
b4_token_enums_defines(b4_tokens)[
|
||||||
|
]b4_declare_yylstype[
|
||||||
[#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
]b4_pure_if([], [[extern YYSTYPE ]b4_prefix[lval;
|
||||||
]m4_ifdef([b4_stype],
|
]b4_locations_if([[extern YYLTYPE ]b4_prefix[lloc;]])])dnl
|
||||||
[[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_push_if([[
|
b4_push_if([[
|
||||||
#ifndef YYPUSH_DECLS
|
#ifndef YYPUSH_DECLS
|
||||||
# define 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?
|
# Is the compiler GCC?
|
||||||
GCC='@GCC@'
|
GCC='@GCC@'
|
||||||
|
|
||||||
# We want no optimization.
|
# We want no optimization, as they uncover warnings (therefore,
|
||||||
O0CFLAGS=`echo '@CFLAGS@' | sed 's/-O[0-9] *//'`
|
# failures) about uninitialized variables in the test suite. FIXME:
|
||||||
O0CXXFLAGS=`echo '@CXXFLAGS@' | sed 's/-O[0-9] *//'`
|
# 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
|
# Sometimes a test group needs to ignore gcc warnings, so it locally
|
||||||
# sets CFLAGS to this.
|
# sets CFLAGS to this.
|
||||||
|
|||||||
Reference in New Issue
Block a user