]> git.saurik.com Git - bison.git/log
bison.git
12 years agodoc: use only @example, not @smallexample.
Akim Demaille [Thu, 15 Mar 2012 14:40:04 +0000 (15:40 +0100)] 
doc: use only @example, not @smallexample.

* doc/bison.texinfo: Convert all @smallexamples into @examples.
Adjust layout where needed.
(cherry picked from commit c93f22fcf703f6e9613c3b1b5129879bc1e79618)

Conflicts:

doc/bison.texinfo

12 years agodoc: style changes.
Akim Demaille [Thu, 15 Mar 2012 14:36:20 +0000 (15:36 +0100)] 
doc: style changes.

* doc/bison.texinfo: Avoid line width issues with TeX.
Upgrade ancient messages.
Move some comments to better looking places.
Add more @group.
(Mfcalc Symbol Table): Reduce variable scopes.
Prefer size_t for sizes.
Prefer declarations with an initial value.
Fix a @group environment.
(cherry picked from commit aaaa2aaef40eed197ebbd0bd45d8a66606cdb19c)

Conflicts:

doc/bison.texinfo

12 years agodoc: minor fixes to "Understanding" section
Paul Eggert [Sat, 17 Mar 2012 19:52:47 +0000 (12:52 -0700)] 
doc: minor fixes to "Understanding" section

* doc/bison.texinfo (Understanding): Minor wording fixes and
improvements.  Fixes problems reported in
<https://savannah.gnu.org/patch/?4306>.
(cherry picked from commit 35880c82dc7a774fc2eefc956c3db97b65082607)

12 years agodoc: update the --verbose report format.
Akim Demaille [Fri, 16 Mar 2012 09:13:16 +0000 (10:13 +0100)] 
doc: update the --verbose report format.

* doc/bison.texinfo (Understanding): Adjust to match the
current format.

12 years agodoc: spell check.
Akim Demaille [Mon, 19 Mar 2012 09:41:25 +0000 (10:41 +0100)] 
doc: spell check.

* doc/bison.texinfo: here.

12 years agodoc: stmt, not stmnt.
Akim Demaille [Fri, 16 Mar 2012 13:31:44 +0000 (14:31 +0100)] 
doc: stmt, not stmnt.

* doc/bison.texinfo: s/stmnt/stmt/g.  This is a
much more common abbreviation for "statement".

12 years agodoc: save width.
Akim Demaille [Fri, 16 Mar 2012 13:29:43 +0000 (14:29 +0100)] 
doc: save width.

* doc/bison.texinfo (Language and Grammar): Use the same
layout for an example in all the versions, i.e., keep
as general case what used to be used only for Info.

12 years agodoc: reformat grammar snippets.
Akim Demaille [Fri, 16 Mar 2012 13:26:00 +0000 (14:26 +0100)] 
doc: reformat grammar snippets.

* doc/bison.texinfo: Convert the grammar examples to
use a narrower style.  This helps fitting into the
@smallbook constraints.
http://lists.gnu.org/archive/html/bison-patches/2012-03/msg00011.html

12 years agodoc: use only @example, not @smallexample.
Akim Demaille [Thu, 15 Mar 2012 14:40:04 +0000 (15:40 +0100)] 
doc: use only @example, not @smallexample.

* doc/bison.texinfo: Convert all @smallexamples into @examples.
Adjust layout where needed.

12 years agodoc: style changes.
Akim Demaille [Thu, 15 Mar 2012 14:36:20 +0000 (15:36 +0100)] 
doc: style changes.

* doc/bison.texinfo: Avoid line width issues with TeX.
Upgrade ancient messages.
Move some comments to better looking places.
Add more @group.
(Mfcalc Symbol Table): Reduce variable scopes.
Prefer size_t for sizes.
Prefer declarations with an initial value.
Fix a @group environment.

12 years agoc.m4: better newline control with b4_parse_param_use.
Akim Demaille [Thu, 15 Mar 2012 13:42:15 +0000 (14:42 +0100)] 
c.m4: better newline control with b4_parse_param_use.

* data/c.m4: Use m4_ifvaln instead of m4_ifval where
applicable.
(b4_parse_param_use): Switch order between two nested
"if"s to avoid useless empty lines.
Adjust callers to avoid useless lines.

12 years agoglr.c: remove (broken) support for YYPRINT.
Akim Demaille [Thu, 15 Mar 2012 13:34:06 +0000 (14:34 +0100)] 
glr.c: remove (broken) support for YYPRINT.

YYPRINT uses yytoknum which glr does not define.  Since YYPRINT
is considered obsolete, and did not work, don't fix its support,
remove it from glr.c.

* data/c.m4 (yy_symbol_value_print): Use YYPRINT only for yacc.c.
* TODO: Done.

12 years agodoc: minor fixes to "Understanding" section
Paul Eggert [Sat, 17 Mar 2012 19:52:47 +0000 (12:52 -0700)] 
doc: minor fixes to "Understanding" section

* doc/bison.texinfo (Understanding): Minor wording fixes and
improvements.  Fixes problems reported in
<https://savannah.gnu.org/patch/?4306>.

12 years agoTODO: update.
Akim Demaille [Thu, 15 Mar 2012 12:56:07 +0000 (13:56 +0100)] 
TODO: update.

12 years agognulib: update.
Akim Demaille [Thu, 15 Mar 2012 12:47:19 +0000 (13:47 +0100)] 
gnulib: update.

12 years agotests: minor fixes/simplifications
Akim Demaille [Wed, 22 Feb 2012 13:42:59 +0000 (14:42 +0100)] 
tests: minor fixes/simplifications

* tests/local.at (AT_BISON_CHECK_NO_XML): Simplify sed programs,
quotation, and default value assignments.
Ensure a proper value to the numeric variables.
Reported by Lie Yan.
http://lists.gnu.org/archive/html/bug-bison/2012-03/msg00000.html

12 years agomaint: fix distcheck.
Akim Demaille [Tue, 13 Mar 2012 10:58:46 +0000 (11:58 +0100)] 
maint: fix distcheck.

* examples/local.mk (MAINTAINERCLEANFILES): Complete, and rename as...
(CLEANFILES): this,
* examples/calc++/local.mk, examples/mfcalc/local.mk,
* examples/rpcalc/local.mk (CLEANFILES): Add the generated files.

12 years agotests: minor fixes/simplifications
Akim Demaille [Wed, 22 Feb 2012 13:42:59 +0000 (14:42 +0100)] 
tests: minor fixes/simplifications

* tests/local.at (AT_BISON_CHECK_NO_XML): Simplify sed programs,
quotation, and default value assignments.
Ensure a proper value to the numeric variables.
Reported by Lie Yan.
http://lists.gnu.org/archive/html/bug-bison/2012-03/msg00000.html

12 years agotests: be robust to POSIXLY_CORRECT being defined.
Akim Demaille [Tue, 6 Mar 2012 08:09:02 +0000 (09:09 +0100)] 
tests: be robust to POSIXLY_CORRECT being defined.

* tests/local.at (AT_BISON_CHECK_NO_XML): Check if
POSIXLY_CORRECT is defined, not if it is defined to 1.
Reported by Lie Yan.
http://lists.gnu.org/archive/html/bug-bison/2012-03/msg00000.html

12 years agotests: be robust to quote style.
Akim Demaille [Wed, 8 Feb 2012 13:44:24 +0000 (14:44 +0100)] 
tests: be robust to quote style.

See <http://lists.gnu.org/archive/html/bug-bison/2012-01/msg00120.html>.

* src/main.c (main): Define the quoting style we use.
* tests/atlocal.in: Use ASCII style quotes during the tests.
(cherry picked from commit 39ac121457237a14437ee7d7bae28e368a201a7a)

12 years agomaint: update gnulib.
Akim Demaille [Fri, 9 Mar 2012 07:11:17 +0000 (08:11 +0100)] 
maint: update gnulib.

* gnulib: update.
* src/scan-gram.l: Don't use the (former version of) STREQ.

12 years agotests: remove quote magic from the bison test wrapper.
Akim Demaille [Wed, 22 Feb 2012 15:11:05 +0000 (16:11 +0100)] 
tests: remove quote magic from the bison test wrapper.

Basically, revert 4c4d35394d1bdb4dc3392482ab002bc111a3378f.

* tests/bison.in: Leave bison's stderr as is.

12 years agotests: be robust to quote style.
Akim Demaille [Wed, 8 Feb 2012 13:44:24 +0000 (14:44 +0100)] 
tests: be robust to quote style.

See <http://lists.gnu.org/archive/html/bug-bison/2012-01/msg00120.html>.

* src/main.c (main): Define the quoting style we use.
* tests/atlocal.in: Use ASCII style quotes during the tests.

12 years agoavoid direct strncmp calls.
Akim Demaille [Thu, 23 Feb 2012 19:14:42 +0000 (20:14 +0100)] 
avoid direct strncmp calls.

Before this change, bison would accept either .tab and _tab equivalently,
whatever the current platform.  Besides, it was not obeying everywhere
to the possible definition of TAB_EXT to something else than .tab.

For consistency, handle only TAB_EXT (".tab" on non DJGPP platforms).
Support for "_tab" is neither documented, nor tested.

* src/system.h (STRNCMP_LIT): New.
From Jim Meyering.
(STRPREFIX_LIT): New.
* src/files.c, src/getargs.c: Use it.

12 years agotests: be robust to POSIXLY_CORRECT being defined.
Akim Demaille [Tue, 6 Mar 2012 08:09:02 +0000 (09:09 +0100)] 
tests: be robust to POSIXLY_CORRECT being defined.

* tests/local.at (AT_BISON_CHECK_NO_XML): Check if
POSIXLY_CORRECT is defined, not if it is defined to 1.
Reported by Lie Yan.
http://lists.gnu.org/archive/html/bug-bison/2012-03/msg00000.html

12 years agobuild: comment changes.
Akim Demaille [Fri, 24 Feb 2012 13:00:22 +0000 (14:00 +0100)] 
build: comment changes.

* Makefile.am, examples/calc++/local.mk, examples/local.mk,
* examples/mfcalc/local.mk, examples/rpcalc/local.mk,
* lib/local.mk, src/local.mk, tests/local.mk:
Make the copyright licenses more uniform.

12 years agobuild: fix more example extraction issues.
Akim Demaille [Fri, 24 Feb 2012 11:10:07 +0000 (12:10 +0100)] 
build: fix more example extraction issues.

* Makefile.am (dist_TESTS): New.
(TESTS, EXTRA_DIST): Run and ship them.
* examples/calc++/local.mk: examples/calc++/calc++.stamp no longer
        exists, don't try to ship it.
(.yy.stamp): New recipe.
Use it.
* examples/calc++/local.mk, examples/mfcalc/local.mk,
* examples/rpcalc/local.mk:
Don't ship the sources.
Adjust the CPPFLAGS: there is nothing left in srcdir.
(MAINTAINERCLEANFILES): Remove, now we are in builddir.
(TESTS): Rename as...
(dist_TESTS): this.

12 years agomaint: fix example extraction issues.
Akim Demaille [Wed, 22 Feb 2012 13:42:39 +0000 (14:42 +0100)] 
maint: fix example extraction issues.

calc++: don't rely on Automake to compile a C++ parser.

Basically, revert commit 609b3d8096fb0cc1fa4d908b6e1a860ced260bda,
Automake 1.11.3 is not safe enough for C++ parser.

* examples/calc++/calc++-parser.hh: Remove.
* examples/calc++/local.mk (examples/calc++/calc++-parser.stamp):
New.

examples: factor the extractions into a single step

extexi had to be run in the extraction directory.  Now, it can be
given the files with expected output directory.  This allows to
use $(*_extracted) variables (before we had to list again their
members, but limited to their base names).  In turn, this also
allows fusing the extraction recipes into a single one.

Also, it is currently too hard (or requires too much duplication,
since Make wants all the occurrences of the files to be prefixed with
$(srcdir)/, which is something Automake cannot support for *_SOURCES)
to work in the source tree.  So extract, and compile scanners and parsers
in the build tree.

* examples/extexi (basename): New.
(BEGIN): Now "file_wanted" maps base name to extracted file name.
* examples/calc++/local.mk, examples/mfcalc/local.mk,
* examples/rpcalc/local.mk: Fuse extraction rules into...
* examples/local.mk: Here.
(extract, extracted): New.

12 years agomaint: use STREQ/STRNEQ.
Akim Demaille [Thu, 23 Feb 2012 17:51:51 +0000 (18:51 +0100)] 
maint: use STREQ/STRNEQ.

* doc/bison.texinfo: Space change.
* src/system.h (STREQ, STRNEQ): New.
* src/files.c, src/ielr.c, src/lalr.c, src/muscle-tab.c,
* src/output.c, src/print.c, src/print_graph.c,
* src/reader.c, src/scan-skel.l, src/tables.c,
* src/uniqstr.c:
Use them.
* src/scan-gram.l: Do not use streq.h, use system.h's STREQ.
* cfg.mk: The documentation is an exception.

12 years agodoc: fix environment issues.
Akim Demaille [Thu, 23 Feb 2012 16:50:29 +0000 (17:50 +0100)] 
doc: fix environment issues.

* doc/bison.texinfo: Do not use @verbatim, in particular when
we use @group inside.
Use @quotation instead of @display for frequently asked questions,
it looks much nicer.
(cherry picked from commit 71b52b1342c65a5497f6b3780481ff2deb932a56)

Conflicts:

doc/bison.texinfo

12 years agodoc: fix environment issues.
Akim Demaille [Thu, 23 Feb 2012 16:50:29 +0000 (17:50 +0100)] 
doc: fix environment issues.

* doc/bison.texinfo: Do not use @verbatim, in particular when
we use @group inside.
Use @quotation instead of @display for frequently asked questions,
it looks much nicer.

12 years agoregen.
Akim Demaille [Tue, 21 Feb 2012 14:52:35 +0000 (15:52 +0100)] 
regen.

* src/parse-gram.h, src/parse-gram.c: regen.

12 years agotests: fix regressions.
Akim Demaille [Tue, 21 Feb 2012 14:38:09 +0000 (15:38 +0100)] 
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 459a57a90ff6fc8209498b7d5bc6e33d5e633f23)

12 years agomaint: gitignore.
Akim Demaille [Wed, 22 Feb 2012 10:49:21 +0000 (11:49 +0100)] 
maint: gitignore.

* examples/mfcalc/.gitignore, examples/rpcalc/.gitignore: Fix.

12 years agoregen.
Akim Demaille [Tue, 21 Feb 2012 15:31:24 +0000 (16:31 +0100)] 
regen.

* src/parse-gram.c, src/parse-gram.h: regen.

12 years agotests: fix regressions.
Akim Demaille [Tue, 21 Feb 2012 14:38:09 +0000 (15:38 +0100)] 
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.

12 years agotests: post-process stderr to normalize quotes.
Akim Demaille [Tue, 21 Feb 2012 14:28:46 +0000 (15:28 +0100)] 
tests: post-process stderr to normalize quotes.

* tests/bison.in: Save bison's stderr, and convert gettextized
quotes to plain ASCII.

12 years agoglr: fix ambiguity reports.
Akim Demaille [Tue, 21 Feb 2012 10:51:37 +0000 (11:51 +0100)] 
glr: fix ambiguity reports.

* tests/glr-regression.at (Ambiguity reports): New.
(cherry picked from commit a6b2f4fc020fe6e464f4a445a7851825d3d57e4d)

12 years agoglr: fix ambiguity reports.
Akim Demaille [Tue, 21 Feb 2012 10:51:37 +0000 (11:51 +0100)] 
glr: fix ambiguity reports.

Fix a regression introduced in commit
783aa653f4ca70a75919c8516b950494c612cbfe.

* tests/glr-regression.at (Ambiguity reports): New.
* data/glr.c (yyreportTree): Fix an offset error.

12 years agodoc: stylistic improvements.
Akim Demaille [Sun, 19 Feb 2012 17:17:19 +0000 (18:17 +0100)] 
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 d4fca427636f15eb952974ff04e4fb046428440a)

Conflicts:

doc/bison.texinfo

12 years agomaint: address sc_prohibit_doubled_word.
Akim Demaille [Sun, 19 Feb 2012 11:54:09 +0000 (12:54 +0100)] 
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 762caaf6393d71d740ad86855a15f5000721d103)

Conflicts:

data/yacc.c

12 years agomaint: address sc_prohibit_always-defined_macros.
Akim Demaille [Sun, 19 Feb 2012 10:40:36 +0000 (11:40 +0100)] 
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

12 years agomaint: address sc_bindtextdomain, sc_program_name and sc_prohibit_HAVE_MBRTOWC.
Akim Demaille [Sun, 19 Feb 2012 10:13:04 +0000 (11:13 +0100)] 
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 4d699f44e65d29b4d49cf68d7a3b4bf856eb5d1b)

Conflicts:

cfg.mk

12 years agomaint: remove stray file.
Akim Demaille [Sun, 19 Feb 2012 11:28:42 +0000 (12:28 +0100)] 
maint: remove stray file.

* config.hin: Remove.
(cherry picked from commit 222342aa6708814c01a63ff7d568209d3705ff47)

12 years agodoc: stylistic improvements.
Akim Demaille [Sun, 19 Feb 2012 17:17:19 +0000 (18:17 +0100)] 
doc: stylistic improvements.

* doc/bison.texinfo: Prefer "continue" to empty loop bodies.
Add some @group/@end group to avoid poor page breaks.

12 years agodoc: check the rpcalc.
Akim Demaille [Sun, 19 Feb 2012 12:05:42 +0000 (13:05 +0100)] 
doc: check the rpcalc.

* doc/bison.texinfo: Tag rpcalc.y snippets.
Add missing includes.
(Rpcalc Rules): Don't issue leading tabs.
Complete an Info menu.
Use @result.
* examples/rpcalc/local.mk: New.
* examples/rpcalc/rpcalc.test: New.
* examples/local.mk: Use them.
* examples/mfcalc/mfcalc.test: Remove dup test.
* examples/test: Disable debug traces.

12 years agoregen.
Akim Demaille [Sun, 19 Feb 2012 11:56:14 +0000 (12:56 +0100)] 
regen.

* src/parse-gram.c, src/parse-gram.h: Regen.

12 years agomaint: address sc_prohibit_doubled_word.
Akim Demaille [Sun, 19 Feb 2012 11:54:09 +0000 (12:54 +0100)] 
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.

12 years agomaint: address sc_prohibit_always-defined_macros.
Akim Demaille [Sun, 19 Feb 2012 10:40:36 +0000 (11:40 +0100)] 
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.

12 years agomaint: address sc_bindtextdomain, sc_program_name and sc_prohibit_HAVE_MBRTOWC.
Akim Demaille [Sun, 19 Feb 2012 10:13:04 +0000 (11:13 +0100)] 
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.

12 years agomaint: remove stray file.
Akim Demaille [Sun, 19 Feb 2012 11:28:42 +0000 (12:28 +0100)] 
maint: remove stray file.

* config.hin: Remove.

12 years agobitset: fix an incorrect error message.
Akim Demaille [Sun, 19 Feb 2012 09:18:29 +0000 (10:18 +0100)] 
bitset: fix an incorrect error message.

* lib/bitset_stats.c: here.
Reported by Stefano Lattarini.

12 years agomaint: address some syntax-issues remaining after cherry-picking from master.
Akim Demaille [Sun, 19 Feb 2012 09:27:05 +0000 (10:27 +0100)] 
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.

12 years agoregen.
Akim Demaille [Sun, 19 Feb 2012 09:22:51 +0000 (10:22 +0100)] 
regen.

* src/parse-gram.c, src/parse-gram.h: Regen.

12 years agobitset: fix an incorrect error message.
Akim Demaille [Sun, 19 Feb 2012 09:18:29 +0000 (10:18 +0100)] 
bitset: fix an incorrect error message.

* lib/bitset_stats.c: here.
Reported by Stefano Lattarini.

12 years agomaint: reenable sc_m4_quote_check
Jim Meyering [Sun, 29 Jan 2012 20:26:43 +0000 (21:26 +0100)] 
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

12 years agomaint: remove trailing empty lines.
Akim Demaille [Sat, 18 Feb 2012 18:25:55 +0000 (19:25 +0100)] 
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

12 years agomaint: avoid "magic number exit".
Akim Demaille [Sat, 18 Feb 2012 18:19:26 +0000 (19:19 +0100)] 
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

12 years agomaint: fix some syntax-check issues.
Akim Demaille [Sat, 18 Feb 2012 17:48:33 +0000 (18:48 +0100)] 
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.

12 years agomaint: address a couple of syntax-check errors.
Akim Demaille [Sat, 18 Feb 2012 14:41:50 +0000 (15:41 +0100)] 
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

12 years agomaint: gnulib: upgrade.
Akim Demaille [Sat, 18 Feb 2012 14:25:31 +0000 (15:25 +0100)] 
maint: gnulib: upgrade.

12 years agomaint: remove trailing empty lines.
Akim Demaille [Sat, 18 Feb 2012 18:25:55 +0000 (19:25 +0100)] 
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.

12 years agomaint: regen.
Akim Demaille [Sat, 18 Feb 2012 18:25:26 +0000 (19:25 +0100)] 
maint: regen.

* src/parse-gram.c, src/parse-gram.h: regen.

12 years agomaint: avoid "magic number exit".
Akim Demaille [Sat, 18 Feb 2012 18:19:26 +0000 (19:19 +0100)] 
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.

12 years agomaint: fix some syntax-check issues.
Akim Demaille [Sat, 18 Feb 2012 17:48:33 +0000 (18:48 +0100)] 
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.

12 years agomaint: address a couple of syntax-check errors.
Akim Demaille [Sat, 18 Feb 2012 14:41:50 +0000 (15:41 +0100)] 
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.

12 years agomaint: gnulib: upgrade.
Akim Demaille [Sat, 18 Feb 2012 14:25:31 +0000 (15:25 +0100)] 
maint: gnulib: upgrade.

12 years agodoc: mfcalc: fix includes.
Akim Demaille [Fri, 17 Feb 2012 14:49:03 +0000 (15:49 +0100)] 
doc: mfcalc: fix includes.

* doc/bison.texinfo: math.h is needed early.

12 years agoexamples: factor the test suite.
Akim Demaille [Fri, 17 Feb 2012 13:59:23 +0000 (14:59 +0100)] 
examples: factor the test suite.

* examples/mfcalc/test, examples/calc++/test: Extract the
common bits into...
* examples/test: here.
(cwd): New.
Use it to avoid a race on the temporary directory.
Reported by Jim Meyering.
* examples/mfcalc/test, examples/calc++/test: Rename into...
* examples/mfcalc/mfcalc.test, examples/calc++/calc++.test: these.
* examples/calc++/local.mk, examples/mfcalc/local.mk,
* examples/local.mk: Adjust.

12 years agoexamples: fix the test suites.
Akim Demaille [Fri, 17 Feb 2012 09:12:06 +0000 (10:12 +0100)] 
examples: fix the test suites.

* examples/calc++/test, examples/mfcalc/test (me): Be more
meaningfull: include the example name.
(prog): Factor.
(run): Avoid printf, use echo.
Add missing parens.
(cleanup): New.
Call it on trap.
Remove the previous "rm" that did the cleanup.
Move into a private directory to avoid concurrency issues.
Reported by Jim Meyering.

12 years agoexamples: link mfcalc with -lm for uses of pow, cos, atan, etc.
Jim Meyering [Fri, 17 Feb 2012 07:36:57 +0000 (08:36 +0100)] 
examples: link mfcalc with -lm for uses of pow, cos, atan, etc.

* examples/mfcalc/local.mk (examples_mfcalc_mfcalc_LDADD): Define.

12 years agomfcalc: extract and exercise.
Akim Demaille [Thu, 16 Feb 2012 14:44:43 +0000 (15:44 +0100)] 
mfcalc: extract and exercise.

* examples/mfcalc/local.mk, examples/mfcalc/test: New,
based on calc++'s ones.
* examples/local.mk: Include mfcalc/local.mk.

12 years agocalc++: factor for other extracted tests.
Akim Demaille [Thu, 16 Feb 2012 14:27:03 +0000 (15:27 +0100)] 
calc++: factor for other extracted tests.

* Makefile.am (TESTS, check_PROGRAMS): Initialize here.
* examples/local.mk (doc, extexi): Define here.
* examples/calc++/local.mk: Adjust accordingly.
* configure.ac: Ask for parallel-tests (for the way the logs
are handled).
* examples/calc++/test: As a consequence, always be verbose.
($prog): New.
(run): Use it.
Sort the tests in a more natural order (simplest first).

12 years agodoc: mfcalc: send errors to stderr.
Akim Demaille [Thu, 16 Feb 2012 14:11:13 +0000 (15:11 +0100)] 
doc: mfcalc: send errors to stderr.

* doc/bison.texinfo (Mfcalc Lexer): New.
(Mfcalc Main): Move the definition of main and yyerror here, for
clarity.
Let yyerror report on stderr.

12 years agodoc: fix mfcalc code.
Akim Demaille [Thu, 16 Feb 2012 14:07:23 +0000 (15:07 +0100)] 
doc: fix mfcalc code.

* doc/bison.texinfo (Multi-function Calc): Add missing includes.
Fix the rendering of the result: use @result and remove the
initial tabulation in the actual code.
Fix stylistic issues: avoid the , operator.
Add extexi mark-up.
* examples/extexi: Also support @smallexample.

12 years agotests: c++: stylistic changes.
Akim Demaille [Thu, 16 Feb 2012 14:51:35 +0000 (15:51 +0100)] 
tests: c++: stylistic changes.

* tests/c++.at: Don't use void for incoming arguments.
Prefer cstdlib to stdlib.h.

12 years agotests: avoid c++ failure due to lack of getenv decl
Jim Meyering [Thu, 16 Feb 2012 10:03:31 +0000 (11:03 +0100)] 
tests: avoid c++ failure due to lack of getenv decl

* tests/c++.at (Syntax error as exception): Avoid spurious failure
at least when compiling with g++-4.7.x due to lack of declaration
of getenv.  Include <stdlib.h>.

12 years agomaint: rely on Automake for parsers.
Akim Demaille [Wed, 15 Feb 2012 12:36:24 +0000 (13:36 +0100)] 
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 737406a32c201471699bfa0843d1f432f3ec29ab and
commit 3d6ca339083c278d907c9f030f4ba6bc5ecb07f2.

12 years agomaint: trust Automake for parser headers.
Akim Demaille [Wed, 15 Feb 2012 12:32:07 +0000 (13:32 +0100)] 
maint: trust Automake for parser headers.

* examples/calc++/local.mk, src/local.mk: Now that automake
can see `-d' in AM_YFLAGS, we can rely on it to compile
and ship the parser header files.

12 years agomaint: help Automake reading Yacc flags.
Akim Demaille [Wed, 15 Feb 2012 11:53:34 +0000 (12:53 +0100)] 
maint: help Automake reading Yacc flags.

* Makefile.am (AM_YFLAGS): Automake looks for "-d" alone.

12 years agocalc++: rely on Automake.
Akim Demaille [Tue, 14 Feb 2012 16:32:51 +0000 (17:32 +0100)] 
calc++: rely on Automake.

Rely on $(YACC) being the bison being built, and let Automake do the
rest.  It turned out to be much more difficult than anticipated, for
various reasons, including some bad behavior from Automake 1.11.2
which (i) generates calc++-parser.h instead of calc++-parser.hh, and
(ii) leaves an #include "y.tab.h" in the generated parser instead
of #include "calc++-parser.h".

The authors of Automake appear to be aware of the problem,
http://lists.gnu.org/archive/html/automake/2011-05/msg00008.html
so a simple work around will suffice for the time being.

* examples/calc++/y.tab.h, examples/calc++/calc++-parser.hh: New.
To work around Automake 1.11.2 issues.
* examples/calc++/local.mk: Remove all the rules for compilation
with bison, leave them to Automake.
So provide it with "calc++-parse.yy" as a source file.
(calc_sources_generated, calc_sources_extracted): Rename as.
(calc_generated, calc_extracted): these.
(calc_sources): New.
Fix them.

12 years agomaint: tidy the Makefile a bit.
Akim Demaille [Tue, 14 Feb 2012 16:27:15 +0000 (17:27 +0100)] 
maint: tidy the Makefile a bit.

* src/local.mk: Put yacc related variables together.
(AUTOMAKE_OPTIONS): Move to...
* Makefile.am: here.
Remove an old Emacs mode request which disables Automake support.
* src/local.mk (YACC, AM_YFLAGS): Move to...
* Makefile.am: here, as they will be used by other local.mks.

12 years agomaint: de-recurse the handling of examples
Akim Demaille [Mon, 13 Feb 2012 17:23:45 +0000 (18:23 +0100)] 
maint: de-recurse the handling of examples

The directory was still using a local Makefile.am because it provides
"scoped" Make variables: these examples are not meant to use the same
CPPFLAGS etc.  If we were to use the same -I set, we'd pick up
gnulib's stdio.h for instance, which we do not want for these simple
examples.

Yet, as a result, the dependencies are less accurate, there is code
duplication, etc.  This is especially perceptible when trying to
extract more examples from the documentation, as will be done in
forthcoming changes.

In order to make the tuning of CPPFLAGS easier, discard the predefined
-I from Automake.

* examples/calc++/Makefile.am: Rename as...
* examples/calc++/local.mk: this.
Adjust the paths which are now rooted in top_srcdir/top_builddir.
Handle BISON_CXX_WORKS here, instead of the too crude previous
approach that completely discarded the whole directory.
($(BISON)): Remove now useless bouncing recipe.
(calc___CPPFLAGS): New.
Stay away from -Ilib.
* Makefile.am, configure.ac, examples/local.mk,
* examples/calc++/test: Adjust.

* configure.ac: Pass nostdinc to Automake.
* src/local.mk, lib/local.mk (AM_CPPFLAGS): Move to...
* Makefile.am: here.

* src/local.mk, examples/calc++/Makefile.am (BISON, BISON_IN): Factor
to...
* Makefile.am: here.
* tests/local.mk: Use it.

12 years agovariant: fix the example.
Akim Demaille [Tue, 14 Feb 2012 11:05:26 +0000 (12:05 +0100)] 
variant: fix the example.

* examples/variant.yy: Adjust to "assert" being now
"parse.assert".

12 years agomaint: more authors.
Akim Demaille [Mon, 13 Feb 2012 12:45:50 +0000 (13:45 +0100)] 
maint: more authors.

* AUTHORS: here.
Suggested by Tys Lefering.
(cherry picked from commit bdf66d1db4b82872076197998ddcfafbed306268)

12 years agomaint: add license headers.
Akim Demaille [Mon, 13 Feb 2012 12:39:23 +0000 (13:39 +0100)] 
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 3272a7256f893399bbbc4b84e6181c71002f3fd8)

Conflicts:

examples/variant.yy
tests/bison.in

12 years agomaint: remove obsolete file.
Akim Demaille [Sat, 11 Feb 2012 13:50:54 +0000 (14:50 +0100)] 
maint: remove obsolete file.

* etc/make-ChangeLogs: Remove (used for rcs to cvs migration!).
Reported by Tys Lefering.
(cherry picked from commit 3b4d62d5269c50231c9a209dd15820ccba21f5e7)

12 years agomaint: more authors.
Akim Demaille [Mon, 13 Feb 2012 12:45:50 +0000 (13:45 +0100)] 
maint: more authors.

* AUTHORS: here.
Suggested by Tys Lefering.

12 years agomaint: add license headers.
Akim Demaille [Mon, 13 Feb 2012 12:39:23 +0000 (13:39 +0100)] 
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.

12 years agomaint: remove obsolete file.
Akim Demaille [Sat, 11 Feb 2012 13:50:54 +0000 (14:50 +0100)] 
maint: remove obsolete file.

* etc/make-ChangeLogs: Remove (used for rcs to cvs migration!).
Reported by Tys Lefering.

12 years agolalr1.cc: also handle syntax_error when calling yylex.
Akim Demaille [Thu, 30 Jun 2011 12:10:21 +0000 (14:10 +0200)] 
lalr1.cc: also handle syntax_error when calling yylex.

* data/lalr1.cc (parse): Catch syntax_error around yylex and
forward them to errlab1.
* tests/c++.at (Syntax error as exception): Check support for
syntax exceptions raised by the scanner.
* NEWS, doc/bison.texinfo: Document it.

12 years agotests: lalr1.cc: check syntax_error.
Akim Demaille [Thu, 9 Feb 2012 09:34:00 +0000 (10:34 +0100)] 
tests: lalr1.cc: check syntax_error.

* tests/c++.at (Syntax error as exception): New.

12 years agotests: don't require locations uselessly.
Akim Demaille [Thu, 9 Feb 2012 09:04:32 +0000 (10:04 +0100)] 
tests: don't require locations uselessly.

* tests/c++.at (Syntax error discarding no lookahead): Contrary to
2.5, C++ parsers can work without locations.

12 years agomaint: more silent rules.
Akim Demaille [Thu, 9 Feb 2012 13:09:23 +0000 (14:09 +0100)] 
maint: more silent rules.

* tests/local.mk (TESTSUITE_AT): Include plackage.m4.
Adjust dependencies.
Make testsuite.at its first argument.
(package.m4): Be silent.
(testsuite): Be silent.
Use $<.

12 years agoskeletons: simplify the protections against "unused" warnings.
Akim Demaille [Thu, 9 Feb 2012 13:02:22 +0000 (14:02 +0100)] 
skeletons: simplify the protections against "unused" warnings.

* data/c.m4 (b4_parse_param_use): Also accept optional arguments
to "use".
Simplify callers.
* data/glr.c (yyuserAction): Simplify use of b4_parse_param_use.
(yy_reduce_print): Don't use b4_parse_param_use, as all the arguments
_are_ used.
* data/lalr1.cc (YY_SYMBOL_PRINT): Even when disabled, "use" the
symbol argument.
This neutralizes a warning in yypush_ when there are no symbols
with a semantic values.
(yy_destroy_): Remove useless "use" of yymsg.

12 years agoglr: formatting changes.
Akim Demaille [Thu, 9 Feb 2012 12:30:37 +0000 (13:30 +0100)] 
glr: formatting changes.

* data/glr.c: Split long strings.

12 years agouse a more consistent quoting style.
Akim Demaille [Wed, 8 Feb 2012 09:28:58 +0000 (10:28 +0100)] 
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 4a9cd8f24abba232b4a07ccdda4c6f109d27acac)

Conflicts:

src/muscle-tab.c

12 years agouse a more consistent quoting style.
Akim Demaille [Wed, 8 Feb 2012 09:28:58 +0000 (10:28 +0100)] 
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.

12 years agomaint: reenable sc_m4_quote_check
Jim Meyering [Sun, 29 Jan 2012 20:26:43 +0000 (21:26 +0100)] 
maint: reenable sc_m4_quote_check

* cfg.mk (local-checks-to-skip): Reenable sc_m4_quote_check.
* m4/dmalloc.m4: Add quotes.

12 years agomaint: force "make syntax-check" to pass by skipping failing tests
Jim Meyering [Sat, 28 Jan 2012 16:11:43 +0000 (17:11 +0100)] 
maint: force "make syntax-check" to pass by skipping failing tests

* cfg.mk (local-checks-to-skip): Skip all currently-failing tests.
Remove changelog-check; it's long gone.