summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.prev-version2
-rw-r--r--NEWS15
-rw-r--r--doc/bison.texi28
-rwxr-xr-xexamples/test3
-rw-r--r--src/complain.c6
-rw-r--r--src/getargs.c2
-rw-r--r--tests/input.at18
7 files changed, 43 insertions, 31 deletions
diff --git a/.prev-version b/.prev-version
index eb39e538..bea438e9 100644
--- a/.prev-version
+++ b/.prev-version
@@ -1 +1 @@
-3.3
+3.3.1
diff --git a/NEWS b/NEWS
index 9fc2e3f6..64aa3b61 100644
--- a/NEWS
+++ b/NEWS
@@ -3,13 +3,20 @@ GNU Bison NEWS
* Noteworthy changes in release ?.? (????-??-??) [?]
+* Noteworthy changes in release 3.3.1 (2019-01-27) [stable]
+
+** Changes
+
+ The option -y/--yacc used to imply -Werror=yacc, which turns uses of Bison
+ extensions into errors. It now makes them simple warnings (-Wyacc).
+
* Noteworthy changes in release 3.3 (2019-01-26) [stable]
-A new mailing list was created, Bison Announce. It is low traffic, and is
-only about announcing new releases and important messages (e.g., polls about
-major decisions to make).
+ A new mailing list was created, Bison Announce. It is low traffic, and is
+ only about announcing new releases and important messages (e.g., polls
+ about major decisions to make).
-https://lists.gnu.org/mailman/listinfo/bison-announce
+ https://lists.gnu.org/mailman/listinfo/bison-announce
** Backward incompatible changes
diff --git a/doc/bison.texi b/doc/bison.texi
index 884a7bd8..279b73d2 100644
--- a/doc/bison.texi
+++ b/doc/bison.texi
@@ -10308,26 +10308,26 @@ See the documentation of @option{--feature=fixit} below for more details.
@item -y
@itemx --yacc
-Act more like the traditional Yacc command. This can cause different
-diagnostics to be generated, and may change behavior in other minor
-ways. Most importantly, imitate Yacc's output file name conventions,
-so that the parser implementation file is called @file{y.tab.c}, and
-the other outputs are called @file{y.output} and @file{y.tab.h}.
-Also, if generating a deterministic parser in C, generate
-@code{#define} statements in addition to an @code{enum} to associate
-token numbers with token names. Thus, the following shell script can
-substitute for Yacc, and the Bison distribution contains such a script
-for compatibility with POSIX:
+Act more like the traditional @command{yacc} command. This can cause
+different diagnostics to be generated (it implies @option{-Wyacc}), and may
+change behavior in other minor ways. Most importantly, imitate Yacc's
+output file name conventions, so that the parser implementation file is
+called @file{y.tab.c}, and the other outputs are called @file{y.output} and
+@file{y.tab.h}. Also, if generating a deterministic parser in C, generate
+@code{#define} statements in addition to an @code{enum} to associate token
+numbers with token names. Thus, the following shell script can substitute
+for Yacc, and the Bison distribution contains such a script for
+compatibility with POSIX:
@example
#! /bin/sh
bison -y "$@@"
@end example
-The @option{-y}/@option{--yacc} option is intended for use with
-traditional Yacc grammars. If your grammar uses a Bison extension
-like @samp{%glr-parser}, Bison might not be Yacc-compatible even if
-this option is specified.
+The @option{-y}/@option{--yacc} option is intended for use with traditional
+Yacc grammars. If your grammar uses Bison extensions like
+@samp{%glr-parser}, Bison might not be Yacc-compatible even if this option
+is specified.
@item -W [@var{category}]
@itemx --warnings[=@var{category}]
diff --git a/examples/test b/examples/test
index 5e643c1f..d987d094 100755
--- a/examples/test
+++ b/examples/test
@@ -15,6 +15,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/>.
+SHELL=/bin/sh
+export SHELL
+
me=$(basename "$1" .test)
medir=$(dirname "$1" | sed -e 's,.*examples/,,')
diff --git a/src/complain.c b/src/complain.c
index a4ab0a1f..50f65af5 100644
--- a/src/complain.c
+++ b/src/complain.c
@@ -421,8 +421,10 @@ duplicate_rule_directive (char const *directive,
location first, location second)
{
unsigned i = 0;
- complain_indent (&second, complaint, &i, _("only one %s allowed per rule"), directive);
+ complain_indent (&second, complaint, &i,
+ _("only one %s allowed per rule"), directive);
i += SUB_INDENT;
- complain_indent (&first, complaint, &i, _("previous declaration"));
+ complain_indent (&first, complaint, &i,
+ _("previous declaration"));
fixits_register (&second, "");
}
diff --git a/src/getargs.c b/src/getargs.c
index 4c411583..973d0f69 100644
--- a/src/getargs.c
+++ b/src/getargs.c
@@ -708,7 +708,7 @@ getargs (int argc, char *argv[])
break;
case 'y':
- warning_argmatch ("error=yacc", 0, 6);
+ warning_argmatch ("yacc", 0, 0);
yacc_loc = command_line_location ();
break;
diff --git a/tests/input.at b/tests/input.at
index 8853af51..7494e46a 100644
--- a/tests/input.at
+++ b/tests/input.at
@@ -1402,15 +1402,15 @@ without_period: "WITHOUT.PERIOD";
AT_BISON_OPTION_POPDEFS
# POSIX Yacc accept periods, but not dashes.
-AT_BISON_CHECK([--yacc input.y], [1], [],
-[[input.y:1.1-5: error: POSIX Yacc does not support %code [-Werror=yacc]
-input.y:9.8-16: error: POSIX Yacc forbids dashes in symbol names: WITH-DASH [-Werror=yacc]
-input.y:10.21-34: error: POSIX Yacc does not support string literals [-Werror=yacc]
-input.y:12.23-38: error: POSIX Yacc does not support string literals [-Werror=yacc]
-input.y:13.1-5: error: POSIX Yacc does not support %code [-Werror=yacc]
-input.y:20.8-16: error: POSIX Yacc forbids dashes in symbol names: with-dash [-Werror=yacc]
-input.y:22.15-28: error: POSIX Yacc does not support string literals [-Werror=yacc]
-input.y:24.17-32: error: POSIX Yacc does not support string literals [-Werror=yacc]
+AT_BISON_CHECK([--yacc input.y], [], [],
+[[input.y:1.1-5: warning: POSIX Yacc does not support %code [-Wyacc]
+input.y:9.8-16: warning: POSIX Yacc forbids dashes in symbol names: WITH-DASH [-Wyacc]
+input.y:10.21-34: warning: POSIX Yacc does not support string literals [-Wyacc]
+input.y:12.23-38: warning: POSIX Yacc does not support string literals [-Wyacc]
+input.y:13.1-5: warning: POSIX Yacc does not support %code [-Wyacc]
+input.y:20.8-16: warning: POSIX Yacc forbids dashes in symbol names: with-dash [-Wyacc]
+input.y:22.15-28: warning: POSIX Yacc does not support string literals [-Wyacc]
+input.y:24.17-32: warning: POSIX Yacc does not support string literals [-Wyacc]
]])
# Dashes are fine for GNU Bison.