Commit Graph

1944 Commits

Author SHA1 Message Date
Akim Demaille
0100cd629d doc: fix lalr1.cc documentation.
* doc/bison.texinfo (C++ Scanner Interface): Fix yylex signature.
	(C++ Bison Interface): Fix lalr1.cc skeleton name.
	(C++ Parser Interface): Fix semantic_type and location_type names.
	Document yy::parser::token.
	Reported by Jerry Quinn.
2010-05-10 10:27:23 +02:00
Akim Demaille
12ff095cad doc: fix typo.
* tests/synclines.at: here.
2010-05-07 17:44:39 +02:00
Akim Demaille
67f5d55d7a tests: enhance AT_SYNCLINES_COMPILE.
* tests/synclines.at (AT_SYNCLINES_COMPILE): More distcc patterns.
	(AT_TEST_SYNCLINE): Remove GCC 4.5 protection which is already
	taken care of in AT_SYNCLINES_COMPILE.

(cherry picked from commit c826013fb3)

Conflicts:

	tests/synclines.at
2010-05-07 17:07:44 +02:00
Joel E. Denny
ff1f7871df Document that undefined %prec identifier warnings will remain.
* NEWS (2.4.3): Here.
(2.4.2): Here.
2010-04-30 15:31:57 -04:00
Joel E. Denny
b733bcd00e build: don't require src/bison during bootstrap.
Suggested by Eric Blake at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00003.html>.
* bootstrap.conf (bootstrap_epilogue): New function to make sure
src/parse-gram.[ch] are stamped later than src/parse-gram.y.
2010-04-25 17:47:46 -04:00
Joel E. Denny
cb76b1f1a3 * NEWS (2.4.3): Mention fix for Sun Studio C++. 2010-04-11 14:43:38 -04:00
Joel E. Denny
4333ba11c6 tests: fix for newer Sun Studio C++.
Reported by Dagobert Michelsen at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00023.html>.
* THANKS (Dagobert Michelsen): Add.
* configure.ac (AC_PREREQ): Set to 2.64 so we get the latest
Autoconf macro for handling the restrict keyword.
* gnulib: Update to latest, which no longer overrides that macro
from Autoconf.
2010-04-10 17:37:27 -04:00
Joel E. Denny
48f4100a82 portability: fix pointer arithmetic to conform to C standard.
Reported by Tys Lefering at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00035.html>.
This fix is already implemented in glr.c and does not apply to
lalr1.java.
* data/lalr1.cc (yy::parser::parse): Increase size of
yyerror_range and adjust subscripting so you don't have to
subtract one from the beginning of the array.
* data/yacc.c (b4_declare_parser_state_variables,
yyparse, yypush_parse): Likewise.
2010-04-03 14:58:22 -04:00
Joel E. Denny
18493762be portability: fix test suite for GCC 4.5's new #error message.
Reported by Tys Lefering at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00030.html>.
* NEWS (2.4.3): Mention.
* tests/synclines.at (AT_TEST_SYNCLINE): Implement.
2010-04-03 13:28:51 -04:00
Akim Demaille
c7b5c7fd06 fix comments.
* src/graphviz.h: Add missing license notice.
	Document.
2010-03-30 14:36:35 +02:00
Joel E. Denny
cf80e9c386 portability: fix for BSD make.
Reported by Johan van Selst at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00016.html>.
* tests/Makefile.am ($(TESTSUITE)): Qualify package.m4 in
this dependency list as in package.m4's target rule.
2010-03-23 20:21:59 -04:00
Joel E. Denny
311b2e56ea portability: fix spawning on at least FreeBSD 8 and FreeBSD 9.
Reported by Johan van Selst at
<http://lists.gnu.org/archive/html/bug-bison/2010-03/msg00014.html>.
* NEWS (2.4.3): New.
* THANKS (Johan van Selst): Add.
* gnulib: Update to latest.
2010-03-23 12:37:50 -04:00
Joel E. Denny
895c37a5c7 maint: update for changes to gnulib's announce-gen.
* HACKING (Announce): RELEASE_TYPE=major must now be written
RELEASE_TYPE=stable.
(cherry picked from commit 5a3c69f103)
2010-03-23 12:37:50 -04:00
Joel E. Denny
08090fe64c Version 2.4.2.
* NEWS (2.4.2): Set version and date.  For the recent test suite
portability fixes, don't be so optimistic about their success
given the lack of feedback on the affected platforms.
2010-03-20 13:10:09 -04:00
Joel E. Denny
c76f5dfb03 Prepare for 2.4.2 release.
* NEWS (2.4.1b): Rename back to...
(2.4.2): ... this, and unset date.
* configure.ac (AM_INIT_AUTOMAKE): Re-enable gnits.
2010-02-22 23:58:13 -05:00
Joel E. Denny
2ad7e09e96 Version 2.4.1b.
* NEWS (2.4.2): Rename to...
(2.4.1b): ... this for now.  Set date.
* configure.ac (AM_INIT_AUTOMAKE): Disable gnits for now because
it does not like this version name.
2010-02-22 21:59:18 -05:00
Joel E. Denny
a3d760ef5d tests: fix maintainer-xml-check for recent changes.
* tests/output.at (AT_CHECK_CONFLICTING_OUTPUT): Use
AT_BISON_CHECK_NO_XML rather than AT_BISON_CHECK because an
output file whose name conflicts with a previous output file
is now never generated.
2010-02-22 21:54:34 -05:00
Joel E. Denny
22cc8d813e portability: fix several issues with M4 subprocess.
M4's output pipe was not being drained upon fatal errors during
scan_skel.  As a result, broken-pipe messages from M4 were seen
on at least AIX, HP-UX, Solaris, and RHEL4, and this caused a
failure in the test suite.  The problem was that, on platforms
where the default disposition for SIGPIPE is ignore instead of
terminate, M4 sometimes saw fwrite fail with errno=EPIPE and
then reported it.  However, there's some sort of race condition,
because the new test group occasionally succeeded.
Reported by Albert Chin at
<http://lists.gnu.org/archive/html/bug-bison/2010-02/msg00004.html>.

There were also problems with the test suite livelocking on
Tru64 5.1b.  Reported by Didier Godefroy at
<http://lists.gnu.org/archive/html/bug-bison/2009-05/msg00005.html>.
Switching to create_pipe_bidi suggested by Akim Demaille.

To attempt to solve both of these problems, switch to gnulib's
create_pipe_bidi and register M4 process as a slave.  Along the
way, clean up file name conflict handling, which was affected by
the broken-pipe problem before the switch.
* NEWS (2.4.2): Document.
* THANKS (Didier Godefroy): Add.
* bootstrap.conf (gnulib_modules): Add pipe.
* gnulib: Update to latest to make sure we have all the latest
fixes.
* lib/Makefile.am (libbison_a_SOURCES): Remove subpipe.h and
subpipe.c.
* po/POTFILES.in (lib/subpipe.c): Remove.
* src/files.c (compute_output_file_names): Update invocations
of output_file_name_check.
(output_file_name_check): In the case that the grammar file
would be overwritten, use complain instead of fatal, but replace
the output file name with /dev/null.  Use the /dev/null solution
for the case of two conflicting output files as well because it
seems safer in case Bison one day tries to open both files at
the same time.
* src/files.h (output_file_name_check): Update prototype.
* src/output.c (output_skeleton): Use create_pipe_bidi and
wait_subprocess.  Assert that scan_skel completely drains the
pipe.
* src/scan-skel.l (at_directive_perform): Update
output_file_name_check invocation.
* tests/output.at (AT_CHECK_CONFLICTING_OUTPUT): Check that the
grammar file actually isn't overwritten.
(Conflicting output files: -o foo.y): Update expected output.
* tests/skeletons.at (Fatal errors but M4 continues producing
output): New test group.
2010-02-22 18:09:19 -05:00
Joel E. Denny
9398411bfc Update POTFILES.
* HACKING (Release Procedure): Add reminder about keeping
POTFILES files up-to-date.
* po/POTFILES.in (src/muscle_tab.c, src/scan-skel.l): Add.
2010-02-04 21:07:07 -05:00
Joel E. Denny
d093cf8cbd tests: link lib/libbison.a for gnulib.
This solves a problem on Solaris 2.7 where the testsuite needs
at least gnulib's rpl_fopen.  Reported by Albert Chin at
<http://lists.gnu.org/archive/html/bug-bison/2010-02/msg00001.html>.
* NEWS (2.4.2): Document.
* tests/atlocal.in (LIBS): As for LDADD in src/Makefile.am, add
lib/libbison.a.
2010-02-01 15:54:41 -05:00
Joel E. Denny
c412a490ec Prepare for 2.4.2 release.
* NEWS (2.4.1a): Rename back to...
(2.4.2): ... this, and unset date.
* configure.ac (AM_INIT_AUTOMAKE): Re-enable gnits.
2010-01-22 13:50:04 -05:00
Joel E. Denny
2d2a7d608e Version 2.4.1a delayed.
* NEWS (2.4.1a): Increment release date as there has been a
small delay in getting the announcements and tarballs out.
2010-01-22 13:02:31 -05:00
Joel E. Denny
5ea72c19da Version 2.4.1a.
* NEWS (2.4.2): Rename to...
(2.4.1a): ... this for now.  Set date.
* configure.ac (AM_INIT_AUTOMAKE): Disable gnits for now because
it does not like this version name.
2010-01-21 18:53:58 -05:00
Joel E. Denny
97d520633b * cfg.mk (gnulib_dir): Assume gnulib is a subdirectory. 2010-01-21 18:52:49 -05:00
Joel E. Denny
af8a609a90 maint: automate PACKAGE_COPYRIGHT_YEAR update, and update it.
* HACKING (Release Procedure): Update notes on copyright years.
* Makefile.am (update-package-copyright-year): New target rule.
* build-aux/update-package-copyright-year: New file.
* cfg.mk (update-copyright): Add update-package-copyright-year
as a dependency.
2010-01-21 16:48:35 -05:00
Joel E. Denny
73edad9a25 * bootstrap: Import improvements from latest gnulib. 2010-01-20 00:26:05 -05:00
Joel E. Denny
9736697d6d build: require Automake 1.11.1 to avoid a security flaw.
* HACKING (Release Procedure): Don't document Automake security
flaw here.
* configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1, and explain
why here.
2010-01-20 00:17:02 -05:00
Joel E. Denny
e2f3fda11a gnulib: update to latest. 2010-01-19 14:20:12 -05:00
Joel E. Denny
3c0be43411 ChangeLog (2006-09-15): add Odd Arild Olsen's role for push.c.
(cherry picked from commit d6bdb90a2a)
2010-01-19 11:52:58 -05:00
Joel E. Denny
d45708d418 Thank the developer of the initial push parser implementation.
This unfortunate oversight is several years old.
* THANKS (Odd Arild Olsen): Add.
(cherry picked from commit 326e5cf81e)
2010-01-15 13:45:08 -05:00
Joel E. Denny
219c26ea51 maint: run "make update-copyright" 2010-01-04 13:59:11 -05:00
Joel E. Denny
f1ceed0774 POSIX: warn if %prec's token was not defined.
Reported by Florian Krohm at
<http://lists.gnu.org/archive/html/bug-bison/2009-12/msg00005.html>.
* NEWS (2.4.2): Document.
* src/reader.c (grammar_rule_check): Implement.
(grammar_current_rule_prec_set): Add comments explaining that we
here assume a %prec identifier is a token, but we still manage
to support POSIX.
* tests/input.at (%prec's token must be defined): New test
group.
2009-12-31 12:49:42 -05:00
Joel E. Denny
d2829fdc04 * HACKING (Release Procedure): Recommend a secure automake. 2009-12-31 12:43:33 -05:00
Joel E. Denny
43dc3c8bc4 YYFAIL: deprecate.
* NEWS (2.4.2): Document deprecation and the phase-out plan.
* data/lalr1.java (parser::YYStack::YYFAIL): Add comment about
deprecation.
* data/yacc.c (YYFAIL): Likewise, and suppress warnings about
YYFAIL from GCC cpp's -Wunused-macros.
* doc/bison.texinfo (Java Action Features): Remove YYFAIL
documentation.
(cherry picked from commit 1625df5b18)

Conflicts:

	doc/bison.texinfo
	src/parse-gram.c
	src/parse-gram.h
2009-12-22 13:26:15 -05:00
Joel E. Denny
3d04b5673d Add gcc's -Wundef to test suite and fix another warning from it.
* NEWS (2.4.2): Update description of -Wundef fix.
* configure.ac (WARN_CXXFLAGS_TEST): New substitution.
(WARN_CFLAGS_TEST): New substitution.
* data/glr.c: Avoid warning about __STRICT_ANSI__.
* tests/atlocal.in (CFLAGS): Use WARN_CFLAGS_TEST instead of
WARN_CFLAGS.
(CXXFLAGS): Use WARN_CXXFLAGS_TEST instead of WARN_CXXFLAGS.
(cherry picked from commit a603c6e0bb)

Conflicts:

	tests/atlocal.in
2009-12-16 13:43:59 -05:00
Joel E. Denny
39c2566994 Document gcc -Wundef fix.
* NEWS (2.4.2): Here.
* THANKS (Jonathan Nieder): Add.
(cherry picked from commit c938d650db)
2009-12-16 01:58:38 -05:00
Jonathan Nieder
1694ac5cf2 Avoid warnings from gcc -Wundef y.tab.c.
* data/glr.c: Check if YYENABLE_NLS and YYLTYPE_IS_TRIVIAL are
defined before using them.
* data/lalr1.cc: Likewise.
* data/yacc.c: Likewise.
(cherry picked from commit ae93128c96)
2009-12-16 01:58:21 -05:00
Joel E. Denny
dfff662817 Import M4 detection fix from Autoconf.
Reported by Eric Blake.
* m4/m4.m4: Copy serial 10.
2009-12-15 19:12:16 -05:00
Joel E. Denny
adf1725fdb Enable assertion output and --disable-assert for configure.
* bootstrap.conf (gnulib_modules): Add assert module.
* src/system.h (aver): Define as assert, and summarize the
discussion on this issue.
(cherry picked from commit ca01f454f0)

Conflicts:

	src/system.h
2009-12-14 18:23:36 -05:00
Joel E. Denny
7aaf9ce758 portability: use va_start and va_end in the same function.
* src/complain.c (error_message): Move va_end from here...
(ERROR_MESSAGE): ... to here.
(cherry picked from commit 786578e394)
2009-10-11 16:34:44 -04:00
Joel E. Denny
2ceb8c617c tests: skip tests of file names that platform does not support.
Reported by Michael Raskin at
<http://lists.gnu.org/archive/html/bug-bison/2009-09/msg00001.html>.
* THANKS (Michael Raskin): Add.
* tests/output.at (AT_CHECK_OUTPUT_FILE_NAME): Fix.  Cygwin used
to fail at least for file names containing ":" or "\".
2009-10-04 23:14:29 -04:00
Akim Demaille
87b9c9bc43 doc: spell checking.
* doc/bison.texinfo: here.
(cherry picked from commit c781580d07)

Conflicts:

	doc/bison.texinfo
2009-09-25 23:36:46 -04:00
Joel E. Denny
dc25ce6bb1 tests: clean up push.at test group titles.
* tests/push.at: Remove "Push Parsing: " from test group titles
because these are already under the banner "Push Parsing Tests".
(cherry picked from commit 00d80a9ced)
2009-09-13 15:26:34 -04:00
Akim Demaille
ace92a2691 NEWS: Internationalization.
* NEWS (2.4.2): Add "Internationalization" item.
(cherry picked from commit 2755de8fec)
2009-09-03 11:09:15 +02:00
Akim Demaille
397bb3932f bootstrap: fix/improve find_tool.
* bootstrap (find_tool): Improve error messages.
	Fix typo about find_tool_names.
2009-09-03 11:08:57 +02:00
Eric Blake
bbbbe221d7 scan-gram: avoid portability trap with ctype usage.
* src/scan-gram.l (<SC_ESCAPED_STRING,SC_ESCAPED_CHARACTER>):
Avoid compiler warning.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-08-27 20:16:07 -06:00
Joel E. Denny
4d7b57b527 tests: use perl for printing special sequences to files.
And skip tests if perl is not available.  This is better than
playing tricks with shell portability.  Suggested by Akim
Demaille.
* tests/input.at (Bad escapes in literals): Use it here for special
characters.
(cherry picked from commit b70c7fb4e1)

Conflicts:

	tests/input.at
2009-08-27 03:59:06 -04:00
Joel E. Denny
321fe707f4 Use locale when quoting.
* src/scan-gram.l (SC_ESCAPED_STRING, SC_ESCAPED_CHARACTER): Use
quote rather than implementing quoting here.
(cherry picked from commit e6c849d82a)
2009-08-21 20:37:26 -04:00
Eric Blake
1266b63674 Make previous patch more robust.
* src/output.c (ARRAY_CARDINALITY): New macro, copied from
argmatch.h.
(output_skeleton): Use it.
Suggested by Akim Demaille.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-08-20 16:43:07 -06:00
Eric Blake
b9ad39c1fb Import latest m4/m4.m4.
* m4/m4.m4: Copy from autoconf 2.64.
* configure.ac (M4_GNU_OPTION): New define.
* src/output.c (output_skeleton): Use it to resolve FIXME.
* NEWS: Mention this.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-08-20 08:44:40 -06:00