Commit Graph

3681 Commits

Author SHA1 Message Date
Akim Demaille
da209f943b tests: fix regressions.
Exit status 63 is documented for version-mismatch.
	* bootstrap.conf (gnulib_modules): Remove sysexits.
	* src/system.h (EX_MISMATCH): Define.
	* src/parse-gram.y (version_check): Use it instead of EX_CONFIG.

Missing includes.
	* tests/calc.at, tests/named-refs.at: Include assert.h.
(cherry picked from commit 459a57a90f)
2012-02-23 16:10:08 +01:00
Akim Demaille
71cbc1ac1a glr: fix ambiguity reports.
* tests/glr-regression.at (Ambiguity reports): New.
(cherry picked from commit a6b2f4fc02)
2012-02-21 14:44:15 +01:00
Akim Demaille
98842516e1 doc: stylistic improvements.
* doc/bison.texinfo: Prefer "continue" to empty loop bodies.
	Add some @group/@end group to avoid poor page breaks.
(cherry picked from commit d4fca42763)

Conflicts:

	doc/bison.texinfo
2012-02-19 18:29:05 +01:00
Akim Demaille
14f4455e43 maint: address sc_prohibit_doubled_word.
* data/yacc.c, doc/bison.texinfo: Reword to avoid having to
	disable that check.
	* cfg.mk: No longer skip this test.
(cherry picked from commit 762caaf639)

Conflicts:

	data/yacc.c
2012-02-19 18:26:01 +01:00
Akim Demaille
43e9e2a113 maint: address sc_prohibit_always-defined_macros.
* cfg.mk: No longer skip it, except where EXIT_SUCCESS is used
	as a witness for stdlib.h.
	Skip this test when appropriate.
	* data/yacc.c: Drop a note about why EXIT_SUCCESS is defined here.

Conflicts:

	cfg.mk
2012-02-19 18:25:24 +01:00
Akim Demaille
a055b2f07d maint: address sc_bindtextdomain, sc_program_name and sc_prohibit_HAVE_MBRTOWC.
* bootstrap.conf (gnulib_modules): Require progname.
	* src/complain.c, src/getargs.c, src/getargs.h, src/main.c: Use it.
	* cfg.mk (exclude): New.
	Use it.
	Skip lib/main.c for bindtextdomain and set_program_name.
(cherry picked from commit 4d699f44e6)

Conflicts:

	cfg.mk
2012-02-19 18:24:17 +01:00
Akim Demaille
95f14eb228 maint: remove stray file.
* config.hin: Remove.
(cherry picked from commit 222342aa67)
2012-02-19 18:21:56 +01:00
Akim Demaille
e0e2b93355 maint: address some syntax-issues remaining after cherry-picking from master.
* cfg.mk: Skip bison generated files, 2.5 is generating trailing
	blanks.  This is already fixed in master.
	* tests/conflicts.at, tests/java.at: Fix white space issues.
2012-02-19 10:29:24 +01:00
Akim Demaille
f95faa25ae regen.
* src/parse-gram.c, src/parse-gram.h: Regen.
2012-02-19 10:22:51 +01:00
Akim Demaille
bd65f25570 bitset: fix an incorrect error message.
* lib/bitset_stats.c: here.
	Reported by Stefano Lattarini.
2012-02-19 10:21:32 +01:00
Jim Meyering
7880130e3e maint: reenable sc_m4_quote_check
* cfg.mk (local-checks-to-skip): Reenable sc_m4_quote_check.
* m4/dmalloc.m4: Add quotes.

Conflicts:

	cfg.mk
2012-02-19 10:21:32 +01:00
Akim Demaille
fe40b679d7 maint: remove trailing empty lines.
* cfg.mk: No longer skip sc_prohibit_empty_lines_at_EOF, except
	for parse-gram.h (generated).
	* examples/mfcalc/.gitignore, lib/.gitignore, m4/.gitignore,
	* po/.gitignore, runtime-po/.gitignore: Remove trailing/leading
	empty lines.

Conflicts:

	examples/mfcalc/.gitignore
2012-02-19 10:21:29 +01:00
Akim Demaille
dd5611579b maint: avoid "magic number exit".
* cfg.mk (local-checks-to-skip): No longer skip it.
	* bootstrap.conf (gnulib_modules): Add sysexits.
	* doc/bison.texinfo, etc/bench.pl.in, src/parse-gram.y,
	* src/system.h, tests/calc.at, tests/named-refs.at: Use assert
	where appropriate instead of "if (...) exit".
	Use symbolic exit status elsewhere.

Conflicts:

	doc/bison.texinfo
	src/parse-gram.y
2012-02-19 10:21:06 +01:00
Akim Demaille
24bb5f8fb7 maint: fix some syntax-check issues.
* cfg.mk (local-checks-to-skip): Remove
	sc_prohibit_quotearg_without_use, sc_prohibit_strcmp,
	sc_unmarked_diagnostics, sc_useless_cpp_parens.
	(sc_unmarked_diagnostics): Skip DJGPP.
	* data/yacc.c, src/LR0.c, src/closure.c,
	* src/flex-scanner.h, src/gram.c, src/lalr.c,
	* src/print-xml.c, src/print.c, src/print_graph.c,
	* src/reader.c, src/reduce.c, src/tables.c:
	Don't use parens with cpp's defined.
	Remove useless includes.
2012-02-19 10:21:06 +01:00
Akim Demaille
6487c0b370 maint: address a couple of syntax-check errors.
* cfg.mk (local-checks-to-skip): Remove sc_error_message_period
	and sc_error_message_uppercase.
	Address the uncovered issues.
	* po/POTFILES.in: Add missing files.
	* src/symtab.c: Remove useless includes.
	* lib/bitset_stats.c, src/files.c, tests/glr-regression.at: Use
	conformant error messages.

Conflicts:

	cfg.mk
	lib/bitset_stats.c
	tests/glr-regression.at
2012-02-19 10:21:06 +01:00
Akim Demaille
1cd5bad9b8 maint: gnulib: upgrade. 2012-02-19 10:21:06 +01:00
Akim Demaille
3f3e78dc89 maint: rely on Automake for parsers.
* Makefile.am (AM_YFLAGS): Automake looks for "-d" alone.
	Move other options in here.
	(BISON): New.
	(YACC): Use it.
	(bison_SOURCES): Now that automake can see `-d' in AM_YFLAGS,
	we can rely on it to compile and ship the parser header
	files.

Based on commit 737406a32c and
commit 3d6ca33908.
2012-02-15 13:46:05 +01:00
Akim Demaille
4e8ec90f24 maint: more authors.
* AUTHORS: here.
	Suggested by Tys Lefering.
(cherry picked from commit bdf66d1db4)
2012-02-14 20:12:56 +01:00
Akim Demaille
a34e8b242e maint: add license headers.
* examples/calc++/test, examples/variant.yy, AUTHORS, THANKS,
	* tests/atlocal.in, tests/bison.in: Add license headers.
	Reported by Tys Lefering.
(cherry picked from commit 3272a7256f)

Conflicts:

	examples/variant.yy
	tests/bison.in
2012-02-14 20:12:34 +01:00
Akim Demaille
b2577f024b maint: remove obsolete file.
* etc/make-ChangeLogs: Remove (used for rcs to cvs migration!).
	Reported by Tys Lefering.
(cherry picked from commit 3b4d62d526)
2012-02-14 20:09:52 +01:00
Akim Demaille
4c787a31df use a more consistent quoting style.
See <http://lists.gnu.org/archive/html/bug-bison/2012-01/msg00120.html>.
Use quotearg as often as possible instead of leaving the choice of
the quotes to the translators.  Use shorter messages.  Factor similar
messages to a single format, to make localization easier.

	* src/files.c, src/getargs.c, src/muscle-tab.c, src/reader.c
	* src/scan-code.l, src/scan-gram.l, src/symtab.c:
	Use quote() or quotearg_colon() on printf arguments instead of
	quotes in the format string.
	* data/bison.m4: Keep sync with the changes in muscle-tab.c.

	* tests/skeletons.at, tests/input.at, tests/regression.at: Adjust
	expected messages.
(cherry picked from commit 4a9cd8f24a)

Conflicts:

	src/muscle-tab.c
2012-02-08 11:40:41 +01:00
Akim Demaille
270ff8be14 maint: remove stray debug code.
* src/Makefile.am (echo): Remove.
2012-01-31 09:42:56 +01:00
Akim Demaille
6e40b8d825 maint: space changes.
* src/Makefile.am: Use 2 leading spaces for variable definition
	spreading over several lines.
2012-01-31 09:42:04 +01:00
Akim Demaille
0802356481 maint: more silent-rules.
* doc/local.mk, src/local.mk, examples/calc++/Makefile.am: Use
	$(AM_V_GEN) and $(AM_V_at) where appropriate.
(cherry picked from commit f67c0a1c35)

Conflicts:

	doc/local.mk
	examples/calc++/Makefile.am
	src/local.mk
2012-01-31 09:41:25 +01:00
Jim Meyering
e187b40d31 do not ignore errors like ENOSPC,EIO when writing to stdout
Standard output was never explicitly closed, so we could not
detect failure.  Thus, bison would ignore the errors of writing
to a full file system and getting an I/O error on write, but only
for standard output, e.g., for --print-localedir, --print-datadir,
--help and some verbose output.
Now, "bison --print-datadir > /dev/full" reports the write failure:
bison: write error: No space left on device
Before, it would exit 0 with no diagnostic, implying success.
This is not an issue for "--output=-" or the other FILE-accepting
command-line options, because unlike most other GNU programs,
an output file argument of "-" is treated as the literal "./-",
rather than standard output.
* bootstrap.conf (gnulib_modules): Add closeout.
* src/main.c: Include "closeout.h".
Use atexit to ensure we close stdout.
* .gitignore: Ignore new files pulled in via gnulib-tool.
(cherry picked from commit acb5895680)

Conflicts:

	m4/.gitignore
2012-01-31 09:26:08 +01:00
Akim Demaille
ec94982bec tests: fix expected output.
* tests/actions.at (YYBACKUP): here.
(cherry picked from commit 888b6ddfe4)
2012-01-26 21:54:10 +01:00
Akim Demaille
94556574b5 yacc: fix YYBACKUP.
Reported by David Kastrup:
https://lists.gnu.org/archive/html/bug-bison/2011-10/msg00002.html.

	* data/yacc.c (YYBACKUP): Accept rhs size.
	Restore the proper state value.
	* TODO (YYBACKUP): Make it...
	* tests/actions.at: a new test case.
	* NEWS, THANKS: Update.
(cherry picked from commit d115aad911)

Conflicts:

	TODO
	data/yacc.c
2012-01-26 21:36:35 +01:00
Akim Demaille
7aadf26359 maint: update TODO.
* TODO (Labeling the symbols): Remove, it's done ("Name references").
(cherry picked from commit 2c7f50be62)
2012-01-26 21:30:19 +01:00
Akim Demaille
48c4bf30fd maint: update THANKS.
* THANKS: Update Tys's address, on his request.
(cherry picked from commit 93ebddb11f)
2012-01-26 21:30:13 +01:00
Akim Demaille
ed2e77eae6 maint: fix --gcc-warnings support.
* configure.ac: Use enable_gcc_warnings instead of enableval,
	which is valid only with AC_ARG_ENABLE.
(cherry picked from commit 1890a2a816)

Conflicts:

	configure.ac
2012-01-26 21:29:50 +01:00
Akim Demaille
8ed97fd2b2 maint: silent-rules.
* configure.ac: Ask for silent-rules support.
	Enable it by default.
(cherry picked from commit da1eb15bc9)
2012-01-26 21:28:32 +01:00
Akim Demaille
e6070f227e maint: remove trailing blanks.
* src/scan-code.l: Here.
2012-01-26 21:27:49 +01:00
Paul Eggert
7a709ad88d tests: port to Solaris 10 'diff -u'
* tests/regression.at (parse-gram.y: LALR = IELR): Port to Solaris 10,
where "diff -u X X" outputs "No differences encountered"
instead of outputting nothing.  Reported by Tomohiro Suzuki in
<http://lists.gnu.org/archive/html/bug-bison/2012-01/msg00101.html>.
(cherry picked from commit 071ca141ec)
2012-01-25 10:52:39 +01:00
Jim Meyering
c373ab641b build: avoid possibly-replaced fprintf in liby-source, yyerror.c
* lib/yyerror.c (yyerror): Use fputs and fputc rather than fprintf
with a mere "%s\n" format.  Always return 0 now, on the assumption
that the return value was never used anyway.
Don't include <config.h> after all.  This avoids a problem
reported by Thiru Ramakrishnan in
http://lists.gnu.org/archive/html/help-bison/2011-11/msg00000.html
* cfg.mk: Exempt lib/yyerror.c from the sc_require_config_h_first test.
* THANKS: Update.
(cherry picked from commit fb9eea8885)
2012-01-25 08:50:14 +01:00
Jim Meyering
b359704747 maint: generate ChangeLog from git log
* Makefile.am (gen-ChangeLog): New rule.
(dist-hook): Depend on it.
(EXTRA_DIST): Distribute the two ChangeLog-* files.
* bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
(bootstrap_post_import_hook): Ensure that ChangeLog exists.
* build-aux/git-log-fix: New file.
* ChangeLog-2012: Renamed ...
* ChangeLog: ... from this.
* ChangeLog-1998: Renamed ...
* OChangeLog: ...from this
* .gitignore: Add ChangeLog.
(cherry picked from commit 5ef4a3c71c)

Conflicts:

	Makefile.am
	bootstrap.conf
	build-aux/.gitignore
2012-01-24 19:58:18 +01:00
Jim Meyering
abf3f74b21 change more quotes in source, and adjust tests to match
Run this command to change each `%s' to '%s' in source directories:
  git grep -l '`%s'\' src djgpp data \
    |xargs perl -pi -e '$q="'\''";s/`%s$q/$q%s$q/g'
* data/bison.m4: Affected per the above.
* djgpp/subpipe.c: Likewise.
* src/files.c: Likewise.
* src/getargs.c: Likewise.
* src/muscle-tab.c: Likewise.
* src/reader.c: Likewise.
* tests/glr-regression.at: Adjust to match.
* tests/input.at: Likewise.
* tests/push.at: Likewise.
* tests/skeletons.at: Likewise.
(cherry picked from commit 4aa9d1ff9c)

Conflicts:

	src/getargs.c
	src/muscle-tab.c
	src/reader.c
	tests/input.at
2012-01-24 19:31:27 +01:00
Jim Meyering
9874f80b2e quote consistently and make tests pass with new quoting from gnulib
Updating to gnulib pulled in new quote and quotarg modules,
by which quoting is now done like 'this' rather than `this'.
That change induces many "make check" test failures.  This change
adapts code and tests so that "make check" passes once again.
* src/scan-code.l: Quote like 'this', not like `this'.
* src/scan-gram.l: Likewise.
* src/symtab.c: Likewise.
* tests/actions.at: Adjust tests to match.
* tests/input.at: Likewise.
* tests/named-refs.at: Likewise.
* tests/output.at: Likewise.
* tests/regression.at: Likewise.
* lib/.gitignore: Regenerate.
* m4/.gitignore: Likewise.
(cherry picked from commit ae93e4e4b8)

Conflicts:

	src/scan-code.l
	src/scan-gram.l
	src/symtab.c
	tests/output.at
2012-01-23 14:07:53 +01:00
Jim Meyering
14594e38ad build: update gnulib and autoconf submodules to latest
(cherry picked from commit 728415f885)
2012-01-23 13:37:14 +01:00
Jim Meyering
ee7e9e3b66 build: manually update bootstrap from gnulib, and adapt
Updating to the latest bootstrap from gnulib involves more of a
change than usual, and updating to the latest gnulib would involve
its own set of challenges with the upcoming quoting changes, so
we update bootstrap manually and separately.
* bootstrap: Update from gnulib.
* lib/Makefile.am: Initialize more variables to empty, so that gnulib.mk
can append to them with "+=".
* bootstrap.conf (gnulib_mk_hook): Remove.  No longer honored.
(gnulib_tool_option_extras): Generate gnulib.mk.
(cherry picked from commit 85ad742d4e)

Conflicts:

	Makefile.am
	bootstrap.conf
	etc/prefix-gnulib-mk
2012-01-23 13:33:00 +01:00
Jim Meyering
81c5003f91 maint: include <config.h> first
* cfg.mk (exclude_file_name_regexp--sc_require_config_h_first):
Exempt data/glr.c and data/yacc.c from the include-config.h-first
requirement.
(cherry picked from commit 77f114dd6e)
2012-01-23 11:30:49 +01:00
Jim Meyering
792aeb0017 build: include <config.h> from lib/yyerror.c
* lib/yyerror.c: Include <config.h>.
(cherry picked from commit cf33c228e0)
2012-01-23 11:29:45 +01:00
Jim Meyering
b6d4f2a27d maint: list djgpp/subpipe.c in po/POTFILES.in
* po/POTFILES.in: Add djgpp/subpipe.c.
(cherry picked from commit e7f5dbf82d)
2012-01-23 11:29:37 +01:00
Jim Meyering
b5e7f274a5 maint: placate the space-TAB syntax-check
* cfg.mk (exclude_file_name_regexp--sc_space_tab): Exempt
tests/input.at and tests/c++.at, since they appear to use
SP-TAB sequences deliberately.
* OChangeLog: Remove space-before-TAB.
(cherry picked from commit aebc430361)
2012-01-23 11:28:55 +01:00
Jim Meyering
d6864e191b doc: correct typo: s/can not/cannot/
* doc/bison.texinfo (Bug Reports): s/can not/cannot/
And remove trailing blanks.
(cherry picked from commit 411614fac4)

Conflicts:

	doc/bison.texinfo
2012-01-23 11:24:48 +01:00
Jim Meyering
10c4beb7ea maint: get gpl-3.0 from gnulib
* bootstrap.conf (gnulib_modules): Add gpl-3.0.
* doc/gpl-3.0.texi: Remove from version control, now that
we get it via gnulib.
* doc/.gitignore: Ignore it.
(cherry picked from commit b87414a05e)
2012-01-22 12:57:40 +01:00
Jim Meyering
2d48e62447 maint: get fdl.texi from gnulib
* bootstrap.conf (gnulib_modules): Add fdl.
* doc/fdl.texi: Remove file.
2012-01-15 10:58:35 +01:00
Jim Meyering
8cc3c80e8a maint: spell "file system" as two separate words
* doc/Doxyfile.in: Spell it "file system", to avoid a
"make syntax-check" failure.
2012-01-15 10:58:14 +01:00
Jim Meyering
77315a51c1 maint: avoid "the the"
* djgpp/README.in: s/the the/the/
* src/parse-gram.c (lloc_default): Likewise.
* src/parse-gram.y (lloc_default): Likewise, and remove a
trailing space.

Conflicts:

	ChangeLog
	src/parse-gram.y
2012-01-15 10:57:18 +01:00
Jim Meyering
e6062fb6da build: avoid warning from coverity about lbitset_elt_find
* lib/lbitset.c (lbitset_elt_find): Remove unnecessary test of "elt",
at a point where we know it is non-NULL, due to prior dereference.
2012-01-13 12:19:08 +01:00
Akim Demaille
3bce8ffc3d maint: factor copyright year.
* configure.ac: Use $PACKAGE_COPYRIGHT_YEAR instead of repeating it.
2012-01-13 12:02:36 +01:00