Compare commits

...
10 Commits
Author SHA1 Message Date
Akim Demaille 1c671bad33 version 3.4.1
* NEWS: Record release date.
2019-05-22 07:28:15 +02:00
Akim Demaille 88cd9570b6 NEWS: update 2019-05-22 07:22:51 +02:00
Akim Demaille c423ad17e7 CI: remove useless apt-get update
The apt addons already ran it for us, it is not needed.

* .travis.yml: here.
2019-05-20 09:35:24 +02:00
Akim Demaille 9114b267a8 c++: beware of to_string portability issues
Reported by Bruno Haible.
http://lists.gnu.org/archive/html/bug-bison/2019-05/msg00033.html

* m4/bison-cxx-std.m4 (_BISON_CXXSTD_11_snippet): Check it.
2019-05-20 06:27:55 +02:00
Akim Demaille 70c3f3ade5 doc: avoid Texinfo portability issues
Reported by Bruno Haible.
http://lists.gnu.org/archive/html/bug-bison/2019-05/msg00024.html
Fixed by Karl Berry.
http://lists.gnu.org/archive/html/bug-bison/2019-05/msg00034.html

* doc/bison.texi: Don't specify the langage, rely on the default.
Avoid blank pages.
2019-05-20 06:12:47 +02:00
Akim Demaille 1934304acf examples: don't run those that require f?lex when it's not available
Reported by Bruno Haible.
http://lists.gnu.org/archive/html/bug-bison/2019-05/msg00026.html

* configure.ac (FLEX_WORKS): New.
* examples/c/lexcalc/local.mk, examples/c/reccalc/local.mk: Use it.
2019-05-19 18:41:59 +02:00
Akim Demaille c8e57e8159 diagnostics: don't crash when libtextstyle is installed
Reported by neok m4700.
https://lists.gnu.org/archive/html/bison-patches/2019-05/msg00025.html
https://github.com/akimd/bison/pull/11

* src/complain.c (complain_init_color): style_file_prepare _needs_ a
string as second argument.
2019-05-19 18:16:47 +02:00
Akim Demaille 1e49f5e1e6 CI: avoid useless git costs
The final gain is small: 2h2min instead 2h9min.  But that is still an
improvement.

* .travis.yml (git.depth): Make the clone very shallow.
(git.submodules): Don't clone gnulib in test jobs.
(jobs.include.compile.script): Do it here.
2019-05-19 17:52:28 +02:00
Akim Demaille 49aae94bed fix: copyable instead of copiable
Reported by Frank Heckenbach.
http://lists.gnu.org/archive/html/bug-bison/2019-05/msg00020.html

* data/skeletons/lalr1.cc, doc/bison.texi: here.
2019-05-19 13:53:15 +02:00
Akim Demaille e191bf7b9f maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2019-05-19 11:36:06 +02:00
11 changed files with 54 additions and 38 deletions
+1 -1
View File
@@ -1 +1 @@
3.3.91
3.4
+16 -16
View File
@@ -1,8 +1,7 @@
# Travis defines and exports CC and CXX *after* we have defined our
# environment variables via 'env'. So, do not use 'env' to define
# them. Instead, put their definitions in MATRIX_EVAL, which we eval
# after the definitions from Travis.
# environment variables via 'env'. So, do not use 'env' to define them.
# Instead, put their definitions in MATRIX_EVAL, which we eval after the
# definitions from Travis.
language: cpp
env:
@@ -21,13 +20,22 @@ stages:
- compile
- test
# matrix.include and jobs.include are aliases (https://docs.travis-ci.com/user/conditional-builds-stages-jobs/).
git:
# Manually handle submodules so that we don't have to uselessly waste 150s
# to download gnulib in the 'test' jobs.
submodules: false
# For the same reasons, we would like to not clone the repo either, but it
# does not seem to be possible.
depth: 1
# matrix.include and jobs.include are aliases
# (https://docs.travis-ci.com/user/conditional-builds-stages-jobs/).
jobs:
include:
- stage: "compile"
dist: xenial
script:
- sudo apt-get update -qq
- sudo apt-get install -qq autoconf automake autopoint flex gettext graphviz help2man m4 texinfo
- autoconf --version
- automake --version
@@ -37,19 +45,12 @@ jobs:
- help2man --version
- makeinfo --version
- m4 --version
- git tag -l
# For some reasons, sometimes the checkout does not have any tags,
# so `git describe` fails, so bootstrap fails.
- git describe || git tag v3.0 -m "Fake version 3.0."
- git describe
# Appears to be needed for the following command (https://github.com/AppImage/AppImageKit/issues/511).
- git submodule sync
# Travis makes a shallow clone, but we need it in full to build the ChangeLog and apply the fixes in git-log-fix.
- git fetch --unshallow || true
- git submodule update --init --recursive
- ./bootstrap
- if [[ -f ~/.bashrc ]]; then source ~/.bashrc; fi
- ./configure --enable-gcc-warnings CC="$CC" CXX="$CXX" $CONFIGUREFLAGS || { cat config.log && false; }
- make -j2
- make -j2 dist
@@ -375,7 +376,7 @@ jobs:
## From https://docs.gitlab.com/ce/ci/ssh_keys/#ssh-keys-when-using-the-docker-executor.
## Applies to Travis too. Applied to all the 'script's (of all the jobs).
before_script:
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
- 'which ssh-agent || ( sudo apt-get install openssh-client -y )'
- eval "$(ssh-agent -s)"
# $SSH_PRIVATE_KEY is multiline. Use $'...' to register its value: $'-----BEGIN OPENSSH PRIVATE KEY-----\nXXXXX...\n...==\n-----END OPENSSH PRIVATE KEY-----'.
- echo "$SSH_PRIVATE_KEY" >/tmp/key.id_rsa
@@ -391,7 +392,6 @@ script:
- eval "$MATRIX_EVAL"
# Beware not too leak $SSH_PRIVATE_KEY.
# - env
- sudo apt-get update -qq
- sudo apt-get install -qq doxygen flex m4
# Install and activate ICC.
- if [[ $CC == "icc" ]]; then build-aux/install-icc.sh; fi
+6
View File
@@ -1,5 +1,11 @@
GNU Bison NEWS
* Noteworthy changes in release 3.4.1 (2019-05-22) [stable]
** Bug fixes
Portability fixes.
* Noteworthy changes in release 3.4 (2019-05-19) [stable]
** Deprecated features
+2
View File
@@ -89,6 +89,7 @@ Jonathan Fabrizio [email protected]
Jonathan Nieder [email protected]
Josh Soref [email protected]
Juan Manuel Guerrero [email protected]
Karl Berry [email protected]
Kees Zeelenberg [email protected]
Keith Browne [email protected]
Ken Moffat [email protected]
@@ -118,6 +119,7 @@ Mike Sullivan [email protected]
Nate Guerin [email protected]
Neil Booth [email protected]
Nelson H. F. Beebe [email protected]
neok m4700 [email protected]
Nick Bowler [email protected]
Nicolas Bedon [email protected]
Nicolas Burrus [email protected]
+1
View File
@@ -215,6 +215,7 @@ $LEX_IS_FLEX || test "X$LEX" = X: || {
AC_MSG_WARN([bypassing lex because flex is required])
LEX=:
}
AM_CONDITIONAL([FLEX_WORKS], [$LEX_IS_FLEX])
AM_CONDITIONAL([FLEX_CXX_WORKS],
[$LEX_IS_FLEX && test $bison_cv_cxx_works = yes])
AC_PROG_YACC
+1 -1
View File
@@ -218,7 +218,7 @@ m4_define([b4_shared_declarations],
]b4_token_constructor_define[
private:
/// This class is not copiable.
/// This class is not copyable.
]b4_parser_class[ (const ]b4_parser_class[&);
]b4_parser_class[& operator= (const ]b4_parser_class[&);
+4 -5
View File
@@ -2,10 +2,8 @@
@comment %**start of header
@setfilename bison.info
@documentencoding UTF-8
@documentlanguage en
@include version.texi
@settitle Bison @value{VERSION}
@setchapternewpage odd
@tex
\gdef\rgbWarning{0.50 0 0.50}
@@ -58,6 +56,7 @@
@c This edition has been formatted so that you can format and print it in
@c the smallbook format.
@c @smallbook
@c @setchapternewpage odd
@c Set following if you want to document %default-prec and %no-default-prec.
@c This feature is experimental and may change in future Bison versions.
@@ -11568,7 +11567,7 @@ Instead of using the built-in types you may use the @code{%define} variable
The requirements over your @var{LocationType} are:
@itemize
@item
it must be copiable;
it must be copyable;
@item
in order to compute the (default) value of @code{@@$} in a reduction, the
@@ -11578,7 +11577,7 @@ parser basically runs
@@$.end = @@@var{N}.end; // The location of last right-hand side symbol.
@end example
@noindent
so there must be copiable @code{begin} and @code{end} members;
so there must be copyable @code{begin} and @code{end} members;
@item
alternatively you may redefine the computation of the default location, in
@@ -14504,7 +14503,7 @@ London, Department of Computer Science, TR-00-12 (December 2000).
@c LocalWords: Beazley's goyacc ocamlyacc SIGACT SIGPLAN colorWarning
@c LocalWords: setcolor rgbError colorError rgbNotice colorNotice derror
@c LocalWords: colorOff maincolor inlineraw darkviolet darkcyan dwarning
@c LocalWords: dnotice copiable
@c LocalWords: dnotice copyable
@c Local Variables:
@c ispell-dictionary: "american"
+9 -7
View File
@@ -19,15 +19,17 @@ lexcalcdir = $(docdir)/%D%
## Calc. ##
## ------ ##
check_PROGRAMS += %D%/lexcalc
TESTS += %D%/lexcalc.test
EXTRA_DIST += %D%/lexcalc.test
nodist_%C%_lexcalc_SOURCES = %D%/parse.y %D%/parse.h %D%/scan.l
if FLEX_WORKS
check_PROGRAMS += %D%/lexcalc
TESTS += %D%/lexcalc.test
nodist_%C%_lexcalc_SOURCES = %D%/parse.y %D%/parse.h %D%/scan.l
# Don't use gnulib's system headers.
%C%_lexcalc_CPPFLAGS = -I$(top_srcdir)/%D% -I$(top_builddir)/%D%
endif FLEX_WORKS
%D%/parse.c: $(dependencies)
# Don't use gnulib's system headers.
%C%_lexcalc_CPPFLAGS = -I$(top_srcdir)/%D% -I$(top_builddir)/%D%
EXTRA_DIST += %D%/lexcalc.test
dist_lexcalc_DATA = %D%/parse.y %D%/scan.l %D%/Makefile %D%/README.md
CLEANFILES += %D%/parse.[ch] %D%/scan.c %D%/parse.output
CLEANDIRS += %D%/*.dSYM
+10 -7
View File
@@ -19,11 +19,15 @@ reccalcdir = $(docdir)/%D%
## Calc. ##
## ------ ##
check_PROGRAMS += %D%/reccalc
TESTS += %D%/reccalc.test
EXTRA_DIST += %D%/reccalc.test %D%/scan.l
nodist_%C%_reccalc_SOURCES = %D%/parse.y %D%/scan.h %D%/scan.c
BUILT_SOURCES += $(nodist_%C%_reccalc_SOURCES)
if FLEX_WORKS
check_PROGRAMS += %D%/reccalc
TESTS += %D%/reccalc.test
nodist_%C%_reccalc_SOURCES = %D%/parse.y %D%/scan.h %D%/scan.c
BUILT_SOURCES += $(nodist_%C%_reccalc_SOURCES)
# Don't use gnulib's system headers.
%C%_reccalc_CPPFLAGS = -I$(top_srcdir)/%D% -I$(top_builddir)/%D%
endif FLEX_WORKS
%D%/parse.c: $(dependencies)
# Tell Make that parse.o depends on scan.h, so that scan.h is built
@@ -44,9 +48,8 @@ DASH = -
$(AM_V_at)$(LEX) -o%D%/scan.c --header-file=%D%/scan.h $(srcdir)/%D%/scan.l
$(AM_V_at)mv $@.tmp $@
# Don't use gnulib's system headers.
%C%_reccalc_CPPFLAGS = -I$(top_srcdir)/%D% -I$(top_builddir)/%D%
EXTRA_DIST += %D%/reccalc.test %D%/scan.l
dist_reccalc_DATA = %D%/parse.y %D%/scan.l %D%/Makefile %D%/README.md
CLEANFILES += %D%/parse.[ch] %D%/parse.output %D%/scan.[ch] %D%/*.stamp
CLEANDIRS += %D%/*.dSYM
+3
View File
@@ -63,6 +63,9 @@ m4_define([_BISON_CXXSTD_11_snippet],
for (int r: std::set<int>{1, 2})
continue;
}
// GCC 4.8.2 on Solaris 11.3 does not support to_string.
auto e = std::to_string(42);
])
m4_define([_BISON_CXXSTD_14_snippet],
+1 -1
View File
@@ -255,7 +255,7 @@ complain_init_color (void)
|| color_mode == color_html
|| (color_mode == color_tty && isatty (STDERR_FILENO)))
{
style_file_prepare ("BISON_STYLE", NULL, pkgdatadir (),
style_file_prepare ("BISON_STYLE", "BISON_STYLEDIR", pkgdatadir (),
"bison-default.css");
/* As a fallback, use the default in the current directory. */
struct stat statbuf;