]> git.saurik.com Git - bison.git/log
bison.git
12 years agomaint: minor simplification
Akim Demaille [Tue, 5 Jun 2012 15:26:35 +0000 (17:26 +0200)] 
maint: minor simplification

* src/output.c (prepare): Assign use_push_for_pull_flag's value at its
declaration.

12 years agoMerge remote-tracking branch 'origin/maint'
Akim Demaille [Tue, 5 Jun 2012 12:06:08 +0000 (14:06 +0200)] 
Merge remote-tracking branch 'origin/maint'

* origin/maint:
  version 2.5.1
  NEWS: prepare for 2.5.1.
  maint: update release procedure
  maint: fix comment typos
  maint: post-release administrivia

Conflicts:
NEWS

12 years agoversion 2.5.1 v2.5.1
Akim Demaille [Tue, 5 Jun 2012 08:03:25 +0000 (10:03 +0200)] 
version 2.5.1

* NEWS: Record release date.

12 years agoNEWS: prepare for 2.5.1.
Akim Demaille [Tue, 5 Jun 2012 07:50:16 +0000 (09:50 +0200)] 
NEWS: prepare for 2.5.1.

* NEWS: Be compliant with do-release-commit-and-tag.

12 years agomaint: update release procedure
Akim Demaille [Wed, 23 May 2012 13:17:35 +0000 (15:17 +0200)] 
maint: update release procedure

* bootstrap.conf: Request do-release-commit-and-tag and readme-release.
* README-hacking: Adjust.

12 years agomaint: fix comment typos
Jim Meyering [Tue, 5 Jun 2012 07:02:36 +0000 (09:02 +0200)] 
maint: fix comment typos

Using http://github.com/lyda/misspell-check, massage its
output into sed commands to perform the suggested changes.
Initially, I filtered out the THRU->Through changes, because
that failed to retain capitalization in the grammar token.
Instead, do this manually, beforehand:

sed -i s/THRU/THROUGH/ tests/existing.at
git ls-files|misspellings -f -|perl -nl \
  -e '/^(.*?)\[(\d+)\]: (\w+) -> "(.*?)"$/ or next;' \
  -e '($file,$n,$l,$r)=($1,$2,$3,$4); $q="'\''"; $r=~s/$q/$q\\$q$q/g;'\
  -e 'print "sed -i $q${n}s!$l!$r!$q $file"'|bash

12 years agobuild: regen.
Akim Demaille [Thu, 24 May 2012 11:55:57 +0000 (13:55 +0200)] 
build: regen.

12 years agoMerge tag 'v2.5.1_rc2'
Akim Demaille [Thu, 24 May 2012 11:37:28 +0000 (13:37 +0200)] 
Merge tag 'v2.5.1_rc2'

Bison 2.5.1_rc2.

* tag 'v2.5.1_rc2': (34 commits)
  Bison 2.5.1_rc2.
  doc: fixes.
  build: fix ChangeLog generation.
  c++: compute the header guards.
  skeletons: remove support for unused directive.
  lalr1.cc: improve Doxygen documentation.
  lalr1.cc: extract stack.hh.
  news: convert to double quotes.
  space changes.
  build: do not prototype flex-generated functions.
  build: fix ChangeLog generation.
  Bison 2.5.1_rc1.
  tests: save/restore Autotest special files when checking XML support.
  tests: AT_SAVE_SPECIAL_FILES / AT_RESTORE_SPECIAL_FILES.
  tests: honor TESTSUITEFLAGS in all the check targets.
  build: do not enable c++ warnings on 0 when nullptr is not supported.
  maint: update gnulib.
  build: config.in.h.
  build: move silent rules.
  glr.c: reduce variable scopes.
  maint: maintainer-release-check.
  maint: shush a syntax-check.
  maint: prefer "commit message" to "log entry".
  command line: fix minor leaks.
  maint: we no longer maintain the ChangeLog.
  maint: fix the generation of the synclines for bison's parser.
  maint: regen.
  maint: import the xmemdup0 gnulib module.
  maint: remove left-over gnulib modules.
  maint: ignore files imported by autopoint.
  build: AC_PROG_LEX: use more readable variable names.
  maint: regen src/parse-gram.[ch]
  maint: simplify parse-gram.y
  maint: s/strncpy/memcpy/, when equivalent

Conflicts:
Makefile.am
NEWS
data/glr.c
data/lalr1.cc
data/stack.hh
examples/rpcalc/local.mk
src/flex-scanner.h
src/getargs.c
src/output.c
src/parse-gram.c
src/parse-gram.h
src/parse-gram.y
tests/Makefile.am
tests/bison.in

12 years agomaint: post-release administrivia
Akim Demaille [Wed, 23 May 2012 12:41:37 +0000 (14:41 +0200)] 
maint: post-release administrivia

* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.

12 years agoBison 2.5.1_rc2. v2.5.1_rc2
Akim Demaille [Tue, 22 May 2012 20:47:41 +0000 (22:47 +0200)] 
Bison 2.5.1_rc2.

* NEWS: Update.

12 years agodoc: fixes.
Akim Demaille [Tue, 22 May 2012 15:29:38 +0000 (17:29 +0200)] 
doc: fixes.

* doc/bison.texinfo: Fix errors spotted by syntax-check.

12 years agobuild: fix ChangeLog generation.
Akim Demaille [Tue, 22 May 2012 14:47:08 +0000 (16:47 +0200)] 
build: fix ChangeLog generation.

* gnulib: Update to get newest gitlog-to-changelog.
* bootstrap: Update.
* Makefile.am (gen-ChangeLog): Fix for Bison's git log style.

12 years agoc++: compute the header guards.
Akim Demaille [Mon, 21 May 2012 12:21:51 +0000 (14:21 +0200)] 
c++: compute the header guards.

This is a frequent request.  Recently pointed out by Wei Song,
<http://lists.gnu.org/archive/html/help-bison/2012-05/msg00002.html>.

* data/c.m4 (b4_tocpp, b4_cpp_guard, b4_cpp_guard_open)
(b4_cpp_guard_close): New.
* data/lalr1.cc, data/location.cc, data/stack.hh: Use them.
* TODO (Header Guards): Move to...
* NEWS: here.
Formatting changes.

12 years agoskeletons: remove support for unused directive.
Akim Demaille [Mon, 21 May 2012 11:12:34 +0000 (13:12 +0200)] 
skeletons: remove support for unused directive.

* src/scan-skel.l (@dir_prefix@): Remove support, has never been
used, not even in the commit that introduced it,
2b81e969ea04c1a6502928ba7e847ec8ff7dcb2f.

12 years agolalr1.cc: improve Doxygen documentation.
Akim Demaille [Mon, 21 May 2012 09:40:42 +0000 (11:40 +0200)] 
lalr1.cc: improve Doxygen documentation.

* data/location.cc: Qualify file names with directory name.

12 years agolalr1.cc: extract stack.hh.
Akim Demaille [Mon, 21 May 2012 09:53:03 +0000 (11:53 +0200)] 
lalr1.cc: extract stack.hh.

See commit 51bacae6b58fd5c6cce861f00440dc917384625e.
* data/stack.hh: New, extracted from...
* data/lalr1.cc: here.
* data/Makefile.am: Adjust.

12 years agonews: convert to double quotes.
Akim Demaille [Mon, 21 May 2012 13:52:17 +0000 (15:52 +0200)] 
news: convert to double quotes.

* NEWS: Convert from `quoted' to "quoted".
Reported by Stefano Lattarini.
http://lists.gnu.org/archive/html/bison-patches/2012-05/msg00039.html

12 years agospace changes.
Akim Demaille [Tue, 15 May 2012 15:15:59 +0000 (17:15 +0200)] 
space changes.

* src/flex-scanner.h: Indent nested cpp directives.

12 years agobuild: do not prototype flex-generated functions.
Akim Demaille [Tue, 15 May 2012 09:22:34 +0000 (11:22 +0200)] 
build: do not prototype flex-generated functions.

Some versions of Flex, possibly modified by the distribution package
maintainers, have incompatible signatures.  Since newer versions of
Flex prototype their functions, avoid the conflicts in that case.
Reported by Stefano Lattarini.
<http://lists.gnu.org/archive/html/bug-bison/2012-05/msg00012.html>.

* src/flex-scanner.h (FLEX_VERSION_GT): New.
Use it to issue prototypes for flex-generated functions only for
versions up to 2.5.31, in accordance with the comment.
See commit dc9701e848f27ae64b6ddcf809580998667d60f2.
Use it to define yylex_destroy when needed.

12 years agobuild: fix ChangeLog generation.
Akim Demaille [Tue, 15 May 2012 08:03:48 +0000 (10:03 +0200)] 
build: fix ChangeLog generation.

* Makefile.am (gen-ChangeLog): Fix for VPATH builds.

12 years agoBison 2.5.1_rc1.
Akim Demaille [Mon, 14 May 2012 12:17:20 +0000 (14:17 +0200)] 
Bison 2.5.1_rc1.

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

12 years agotests: save/restore Autotest special files when checking XML support.
Akim Demaille [Fri, 11 May 2012 15:11:09 +0000 (17:11 +0200)] 
tests: save/restore Autotest special files when checking XML support.

Currently the test 248, "parse-gram.y: LALR = IELR", fails
BISON_TEST_XML is set.

* tests/local.at (AT_BISON_CHECK_XML): Belt: Save/restore files.
* tests/regression.at (parse-gram.y: LALR = IELR): Suspenders: Don't
rely on expout.
Each one of these changes suffices.

12 years agotests: AT_SAVE_SPECIAL_FILES / AT_RESTORE_SPECIAL_FILES.
Akim Demaille [Fri, 11 May 2012 14:55:30 +0000 (16:55 +0200)] 
tests: AT_SAVE_SPECIAL_FILES / AT_RESTORE_SPECIAL_FILES.

Some of our macros play with expout and other Autotest special files,
which may break their callers (e.g., currently TESTSUITEFLAGS='248
BISON_TEST_XML=1' fails).

There is already some support for this.  Expand it to be ready to use
it elsewhere.

* tests/local.at (AT_RESTORE_SPECIAL_FILES, AT_SAVE_SPECIAL_FILES)
(at_save_special_files, at_restore_special_files): New.
(AT_BISON_CHECK_NO_XML): Use them.

12 years agotests: honor TESTSUITEFLAGS in all the check targets.
Akim Demaille [Fri, 11 May 2012 12:59:29 +0000 (14:59 +0200)] 
tests: honor TESTSUITEFLAGS in all the check targets.

* tests/Makefile.am (installcheck-local): Simplify.
(maintainer-check-posix, maintainer-check-valgrind): Honor
$(TESTSUITEFLAGS).

12 years agobuild: do not enable c++ warnings on 0 when nullptr is not supported.
Akim Demaille [Wed, 9 May 2012 09:20:18 +0000 (11:20 +0200)] 
build: do not enable c++ warnings on 0 when nullptr is not supported.

* configure.ac (WARN_CXXFLAGS): Enable -Wzero-as-null-pointer-constant
only when nullptr is supported..

12 years agomaint: update gnulib.
Akim Demaille [Wed, 9 May 2012 08:13:58 +0000 (10:13 +0200)] 
maint: update gnulib.

* bootstrap, gnulib: Update.

12 years agobuild: config.in.h.
Akim Demaille [Wed, 9 May 2012 09:00:32 +0000 (11:00 +0200)] 
build: config.in.h.

Historically we used config.hin (where everybody else used
config.h.in) to please DOS.  Now that we use gnulib, there are already
tons of files with several dots, especially *.in.h.

* configure.ac: Rename config.hin as config.in.h.

12 years agobuild: move silent rules.
Akim Demaille [Wed, 9 May 2012 08:14:25 +0000 (10:14 +0200)] 
build: move silent rules.

* tests/Makefile.am: In the generation of the test suite.

12 years agoglr.c: reduce variable scopes.
Akim Demaille [Sun, 9 Jan 2011 10:06:23 +0000 (11:06 +0100)] 
glr.c: reduce variable scopes.

* data/glr.c: Where appropriate, fuse variable declarations followed
by assignments by variable declarations with a value.
Where appropriate, introduce new scopes to limit variable spans.

12 years agomaint: maintainer-release-check.
Akim Demaille [Tue, 8 May 2012 10:04:24 +0000 (12:04 +0200)] 
maint: maintainer-release-check.

* tests/Makefile.am (maintainer-release-check): New.
* Makefile.am (MAINTAINER_CHECKS): New.
Support maintainer-release-check.
* README-hacking: Document it, and syntax-check too.

12 years agomaint: shush a syntax-check.
Akim Demaille [Tue, 8 May 2012 09:01:18 +0000 (11:01 +0200)] 
maint: shush a syntax-check.

* cfg.mk: lib/timevar is not planned to be gnulib'ed, as it comes
from GCC.

12 years agomaint: prefer "commit message" to "log entry".
Akim Demaille [Tue, 8 May 2012 10:06:49 +0000 (12:06 +0200)] 
maint: prefer "commit message" to "log entry".

* README-hacking: here.
Suggested by Stefano Lattarini.

12 years agocommand line: fix minor leaks.
Akim Demaille [Tue, 8 May 2012 08:27:34 +0000 (10:27 +0200)] 
command line: fix minor leaks.

* src/getargs.c (getargs): Free pointers before allocating them new
content.

12 years agomaint: we no longer maintain the ChangeLog.
Akim Demaille [Tue, 8 May 2012 08:17:46 +0000 (10:17 +0200)] 
maint: we no longer maintain the ChangeLog.

* .gitattributes: No need to merge it.
* README-hacking: Update release instructions.

12 years agomaint: fix the generation of the synclines for bison's parser.
Akim Demaille [Sun, 6 May 2012 08:29:53 +0000 (10:29 +0200)] 
maint: fix the generation of the synclines for bison's parser.

* tests/bison.in: Import from master the changes that make
this script generate synclines that are independant of the
builddir/srcdir user's set up.

12 years agomaint: regen.
Akim Demaille [Sun, 6 May 2012 08:29:43 +0000 (10:29 +0200)] 
maint: regen.

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

12 years agomaint: import the xmemdup0 gnulib module.
Akim Demaille [Sun, 6 May 2012 08:20:43 +0000 (10:20 +0200)] 
maint: import the xmemdup0 gnulib module.

* bootstrap.conf: Require this module.
* src/parse-gram.y: Include xmemdup0.h.

12 years agomaint: remove left-over gnulib modules.
Akim Demaille [Sun, 6 May 2012 08:04:47 +0000 (10:04 +0200)] 
maint: remove left-over gnulib modules.

* bootstrap.conf (gnulib_modules): Remove pipe-posix.
* lib/.gitignore, m4/.gitignore: Remove files that we no longer use.

12 years agomaint: ignore files imported by autopoint.
Akim Demaille [Sun, 6 May 2012 07:43:43 +0000 (09:43 +0200)] 
maint: ignore files imported by autopoint.

* m4/.gitignore: here.

12 years agobuild: AC_PROG_LEX: use more readable variable names.
Akim Demaille [Sun, 6 May 2012 07:37:10 +0000 (09:37 +0200)] 
build: AC_PROG_LEX: use more readable variable names.

* m4/flex.m4 (AC_PROG_LEX): Prefer LEX_IS_FLEX to FLEX.
Prefer true/false to yes/no for such variables.
* configure.ac: Adjust.

12 years agomaint: regen src/parse-gram.[ch]
Jim Meyering [Thu, 3 May 2012 21:07:56 +0000 (23:07 +0200)] 
maint: regen src/parse-gram.[ch]

12 years agomaint: simplify parse-gram.y
Jim Meyering [Thu, 3 May 2012 21:01:05 +0000 (23:01 +0200)] 
maint: simplify parse-gram.y

* src/parse-gram.y (add_param): Use xmemdup0 in place of
xmalloc+memcpy, and strspn in place of an open-coded loop.

Co-authored-by: Akim Demaille <akim@lrde.epita.fr>
12 years agomaint: s/strncpy/memcpy/, when equivalent
Jim Meyering [Sat, 5 May 2012 09:30:01 +0000 (11:30 +0200)] 
maint: s/strncpy/memcpy/, when equivalent

* src/output.c (output_skeleton): Use memcpy, not strncpy,
since the source is known to fit in the destination buffer.
* src/parse-gram.y (%skeleton): Likewise.

12 years agoglr.c: formatting changes.
Akim Demaille [Fri, 4 May 2012 15:33:12 +0000 (17:33 +0200)] 
glr.c: formatting changes.

* data/glr.c: Fix indentation.

12 years agoMerge remote-tracking branch 'origin/master'
Akim Demaille [Fri, 4 May 2012 13:04:30 +0000 (15:04 +0200)] 
Merge remote-tracking branch 'origin/master'

* origin/master:
  glr.c: untabify.
  glr.cc: untabify.
  glr.cc: formatting changes.
  glr.cc: remove unused signature.
  glr.cc: properly declare locations are const where appropriate.
  doc: fix @xref.

Conflicts:
data/glr.cc

12 years agoglr.c: untabify.
Akim Demaille [Fri, 4 May 2012 12:11:19 +0000 (14:11 +0200)] 
glr.c: untabify.

* data/glr.c: here.

12 years agoglr.cc: untabify.
Akim Demaille [Fri, 4 May 2012 12:11:07 +0000 (14:11 +0200)] 
glr.cc: untabify.

* data/glr.cc: here.

12 years agoglr.cc: formatting changes.
Akim Demaille [Fri, 4 May 2012 12:08:02 +0000 (14:08 +0200)] 
glr.cc: formatting changes.

* data/glr.cc: Fit in 80 columns.

12 years agoglr.cc: remove unused signature.
Akim Demaille [Fri, 4 May 2012 12:06:29 +0000 (14:06 +0200)] 
glr.cc: remove unused signature.

* data/glr.cc (yydestruct_): Not used, remove.
It is yydestruct which is used.

12 years agoglr.cc: properly declare locations are const where appropriate.
Akim Demaille [Fri, 4 May 2012 12:05:35 +0000 (14:05 +0200)] 
glr.cc: properly declare locations are const where appropriate.

* data/glr.cc (yyerror): The location is const.

12 years agodoc: fix @xref.
Akim Demaille [Fri, 4 May 2012 12:50:32 +0000 (14:50 +0200)] 
doc: fix @xref.

* doc/bison.texinfo: here.

12 years agoMerge remote-tracking branch 'origin/maint'
Akim Demaille [Fri, 4 May 2012 12:38:53 +0000 (14:38 +0200)] 
Merge remote-tracking branch 'origin/maint'

* origin/maint: (22 commits)
  tests: ignore code coverage/profiling failure messages
  doc: fix some invalid @ref.
  build: fix previous commit.
  install-pdf: fix.
  NEWS: Update.
  %printer: support both yyo and yyoutput.
  doc: mfcalc: demonstrate %printer.
  tests: style changes.
  build: require Flex.
  build: flex.m4: check for Flex.
  build: flex.m4: quote properly.
  build: flex.m4.
  build: autoconf: update.
  glr: eliminate last bits of unwanted locations.
  NEWS: 2.6 will drop K&R.
  TODO: remove dead items.
  TODO: import from master.
  gnulib: update.
  maint: update NEWS.
  doc: fix index.
  doc: fix documentation of YYERROR.
  c++: more YY_NULL

Conflicts:
TODO
bootstrap
data/c.m4
data/glr.c
data/lalr1.cc
doc/bison.texinfo

12 years agotests: ignore code coverage/profiling failure messages
Akim Demaille [Tue, 17 Apr 2012 14:50:52 +0000 (16:50 +0200)] 
tests: ignore code coverage/profiling failure messages

The Hydra buildfarm provides code coverage analysis.  For some reason,
in some test cases, code coverage data seem to be incompatible, and
generate error messages at parser run-time.  Ignore these messages so
that (i) these tests do pass, (ii) coverage results be provided by
Hydra.

* tests/local.at (AT_PARSER_CHECK): Ignore messages for failed merges
of code coverage/profiling results.

12 years agodoc: fix some invalid @ref.
Akim Demaille [Sun, 8 Apr 2012 08:17:58 +0000 (10:17 +0200)] 
doc: fix some invalid @ref.

* doc/bison.texinfo: Fix incorrect @ref uses.
(cherry picked from commit e3fd1dcb8b0b55525876440410f71791d8b4c2f3)

12 years agobuild: fix previous commit.
Akim Demaille [Mon, 16 Apr 2012 17:18:58 +0000 (19:18 +0200)] 
build: fix previous commit.

* bootstrap: Update from gnulib.

12 years agoinstall-pdf: fix.
Akim Demaille [Mon, 16 Apr 2012 15:56:52 +0000 (17:56 +0200)] 
install-pdf: fix.

* gnulib: Fix install-pdf in po/ and runtime-po/.
Reported by Hans Aberg.
Fixed by Joel E. Denny.
http://lists.gnu.org/archive/html/bug-bison/2011-05/msg00008.html

12 years agoNEWS: Update.
Akim Demaille [Mon, 16 Apr 2012 15:53:15 +0000 (17:53 +0200)] 
NEWS: Update.

* NEWS: Spell check.
(%printer): is now documented.

12 years ago%printer: support both yyo and yyoutput.
Akim Demaille [Mon, 16 Apr 2012 15:03:19 +0000 (17:03 +0200)] 
%printer: support both yyo and yyoutput.

lalr1.cc used to support yyo, but not yyoutput.  Support both,
but document only yyoutput (at least until there is some consensus
on this).

* data/c.m4 (yy_symbol_value_print): Also support yyo.
* data/glr.cc  (yy_symbol_value_print_): Support both yyo and yyoutput.
* data/lalr1.cc: Also support yyoutput.
* doc/bison.texinfo: Explicitly use yyoutput in the examples.
* examples/mfcalc/mfcalc.test: Test the -p option.
(cherry picked from commit c50263271db482261b11f7452283c142a780a09d)

Conflicts:

data/c.m4
data/lalr1.cc
doc/bison.texinfo
etc/Makefile.am

12 years agodoc: mfcalc: demonstrate %printer.
Akim Demaille [Sun, 8 Apr 2012 08:17:55 +0000 (10:17 +0200)] 
doc: mfcalc: demonstrate %printer.

* doc/bison.texinfo (Printer Decl): New.
Number mfcalc.y snippets so that they are output in
the proper order.
(The mfcalc Main): Use yydebug.
(Debugging): Simplify the text.
(Enabling Traces, Mfcalc Traces, The YYPRINT Macro): New.
(Table of Symbols): Document YYPRINT and YYFPRINTF.

(cherry picked from commit 93c150b666c3345bdd1527a5495a4787d8c3b5bf)

Conflicts:

doc/bison.texinfo

12 years agotests: style changes.
Akim Demaille [Mon, 16 Apr 2012 14:34:00 +0000 (16:34 +0200)] 
tests: style changes.

* tests/input.at: Use "print" in %printer instead of "destroy".
It is unused, so we don't care, yet it is less surprising.
* tests/actions.at: Comment changes.

(cherry picked from commit abcd36ca1b658b108fc926f19cb9e45fb41daa65)

12 years ago%printer: support both yyo and yyoutput.
Akim Demaille [Mon, 16 Apr 2012 15:03:19 +0000 (17:03 +0200)] 
%printer: support both yyo and yyoutput.

lalr1.cc used to support yyo, but not yyoutput.  Support both,
but document only yyoutput (at least until there is some consensus
on this).

* data/c.m4 (yy_symbol_value_print): Also support yyo.
* data/glr.cc  (yy_symbol_value_print_): Support both yyo and yyoutput.
* data/lalr1.cc: Also support yyoutput.
* doc/bison.texinfo: Explicitly use yyoutput in the examples.
* examples/mfcalc/mfcalc.test: Test the -p option.

12 years agodoc: mfcalc: demonstrate %printer.
Akim Demaille [Sun, 8 Apr 2012 08:17:55 +0000 (10:17 +0200)] 
doc: mfcalc: demonstrate %printer.

* doc/bison.texinfo (Printer Decl): New.
Number mfcalc.y snippets so that they are output in
the proper order.
(The mfcalc Main): Use yydebug.
(Debugging): Simplify the text.
(Enabling Traces, Mfcalc Traces, The YYPRINT Macro): New.
(Table of Symbols): Document YYPRINT and YYFPRINTF.

12 years agotests: style changes.
Akim Demaille [Mon, 16 Apr 2012 14:34:00 +0000 (16:34 +0200)] 
tests: style changes.

* tests/input.at: Use "print" in %printer instead of "destroy".
It is unused, so we don't care, yet it is less surprising.
* tests/actions.at: Comment changes.

12 years agobuild: require Flex.
Akim Demaille [Tue, 10 Apr 2012 19:36:23 +0000 (21:36 +0200)] 
build: require Flex.

* configure.ac: Require Flex.

12 years agobuild: flex.m4: check for Flex.
Akim Demaille [Tue, 10 Apr 2012 19:36:19 +0000 (21:36 +0200)] 
build: flex.m4: check for Flex.

* m4/flex.m4 (_AC_PROG_LEX_YYTEXT_DECL): Check that $LEX
supports some of the Flex options, and exclusive start conditions.
Define FLEX to 'yes'/'', as AC_PROG_CC does for GCC.

12 years agobuild: flex.m4: quote properly.
Akim Demaille [Tue, 10 Apr 2012 19:19:59 +0000 (21:19 +0200)] 
build: flex.m4: quote properly.

* m4/flex.m4: Use quotes more systematically.

12 years agobuild: flex.m4.
Akim Demaille [Tue, 10 Apr 2012 18:58:20 +0000 (20:58 +0200)] 
build: flex.m4.

* m4/flex.m4: New.
An exact copy of what is in Autoconf currently.

12 years agobuild: autoconf: update.
Akim Demaille [Tue, 10 Apr 2012 18:49:47 +0000 (20:49 +0200)] 
build: autoconf: update.

* submodules/autoconf: Update.
There are no changes in data/m4sugar/foreach.m4, and the
changes in data/m4sugar/m4sugar.m4 are minor.

12 years agoglr: eliminate last bits of unwanted locations.
Akim Demaille [Tue, 10 Apr 2012 06:07:32 +0000 (08:07 +0200)] 
glr: eliminate last bits of unwanted locations.

* data/glr.c (YYLTYPE): Do not define when locations are
not demanded.
Adjust all dependencies.

12 years agoNEWS: 2.6 will drop K&R.
Akim Demaille [Tue, 10 Apr 2012 06:07:17 +0000 (08:07 +0200)] 
NEWS: 2.6 will drop K&R.

* NEWS: here.
(glr.c): Fix a spello.

12 years agoTODO: remove dead items.
Akim Demaille [Mon, 9 Apr 2012 13:03:21 +0000 (15:03 +0200)] 
TODO: remove dead items.

* TODO (Documentation, %printer, Java): Remove, already done (or just
waiting for approval).
(Fortran, BTYacc): Remove, there does not seem to be demand.

12 years agoTODO: import from master.
Akim Demaille [Mon, 9 Apr 2012 13:00:12 +0000 (15:00 +0200)] 
TODO: import from master.

* TODO: Copy the current version.

12 years agotests: fix bison wrapper.
Akim Demaille [Sun, 8 Apr 2012 10:07:23 +0000 (12:07 +0200)] 
tests: fix bison wrapper.

* tests/bison.in (PERL): Fix.

12 years agodoc: fix some invalid @ref.
Akim Demaille [Sun, 8 Apr 2012 08:17:58 +0000 (10:17 +0200)] 
doc: fix some invalid @ref.

* doc/bison.texinfo: Fix incorrect @ref uses.

12 years agobuild: extexi: support out-of-order blocks.
Akim Demaille [Sun, 8 Apr 2012 07:45:12 +0000 (09:45 +0200)] 
build: extexi: support out-of-order blocks.

* examples/extexi (%file_output): Remove.
(&process): Accept "FILE: BLOCK-NUM" requests.

12 years agobuild: look for Perl in configure.
Akim Demaille [Sun, 8 Apr 2012 06:58:43 +0000 (08:58 +0200)] 
build: look for Perl in configure.

Bison uses "/usr/bin/perl" or "perl" in several places, and it does
not appear to be a problem.  But, at least to make it simpler to
change PERL on the make command line, check for perl in configure.

* configure.ac (PERL): New.
* doc/Doxyfile.in, doc/local.mk, examples/local.mk,
* tests/bison.in: Use it.

12 years agomaint: rewrite extexi in Perl.
Akim Demaille [Sat, 7 Apr 2012 16:58:57 +0000 (18:58 +0200)] 
maint: rewrite extexi in Perl.

* examples/extexi: Rewrite in Perl.
* examples/local.mk (extract): Adjust.

12 years agobuild: simplify clean.
Akim Demaille [Sat, 7 Apr 2012 12:44:07 +0000 (14:44 +0200)] 
build: simplify clean.

* doc/local.mk (CLEANFILES): Since the previous commit,
there a no longer such files.
* Makefile.in (CLEANFILES): Initialize here.

12 years agognulib: update.
Akim Demaille [Sat, 7 Apr 2012 11:51:20 +0000 (13:51 +0200)] 
gnulib: update.

* bootstrap.conf (bootstrap_sync): True again.
It was disabled while waiting for changes to be integrated
in gnulib's bootstrap, which was done long ago.
* bootstrap, gnulib: Update.

12 years agomaint: update NEWS.
Akim Demaille [Wed, 4 Apr 2012 08:09:30 +0000 (10:09 +0200)] 
maint: update NEWS.

* NEWS: Fix entry about __attribute__.
Reorder by "decreasing" order of importance.

12 years agodoc: fix index.
Akim Demaille [Tue, 3 Apr 2012 11:15:20 +0000 (13:15 +0200)] 
doc: fix index.

http://lists.gnu.org/archive/html/bison-patches/2012-04/msg00006.html

* doc/bison.texinfo: Avoid using @def* variant with more
than the defined entity as main entity, as it results in
an incorrect index.  For instance, don't document
{return YYERROR;}, which results in a single index entry
"return YYERROR;", but rather as typed function whose
return type is "type", and whose argument list is ";".

12 years agodoc: fix documentation of YYERROR.
Akim Demaille [Mon, 2 Apr 2012 14:43:26 +0000 (16:43 +0200)] 
doc: fix documentation of YYERROR.

* doc/bison.texinfo (Table of Symbols): Fix the documentation
of YYERROR by copying that from "Action Features".

12 years agobuild: fix distcheck issues.
Akim Demaille [Sun, 1 Apr 2012 13:09:54 +0000 (15:09 +0200)] 
build: fix distcheck issues.

For some reason it seems that texi2dvi -o no longer forces --clean
mode, so we have stray TeX compilation files staying in top_builddir
since TeX is run from there.

While at it, upgrade the generation of the (completely obsolete)
reference card.  Target PDF.

* doc/local.mk (TEXI2DVI): Pass --build-dir.
(CLEANDIRS): More accurate.
(doc/refcard.dvi): Replace with...
(doc/refcard.pdf): this.
Adjust dependencies.

12 years agobuild: don't rely on $< in non-pattern rules.
Akim Demaille [Sun, 1 Apr 2012 12:27:23 +0000 (14:27 +0200)] 
build: don't rely on $< in non-pattern rules.

* doc/local.mk, tests/local.mk: here.
Reported by Stefano Lattarini.

12 years agodoc: upgrade Doxyfile.
Akim Demaille [Sun, 1 Apr 2012 12:16:12 +0000 (14:16 +0200)] 
doc: upgrade Doxyfile.

* doc/Doxyfile.in: Run doxygen -u.
Prompted by Tim Landscheidt.

12 years agodoc: help Doxygen find our files.
Akim Demaille [Sun, 1 Apr 2012 12:14:19 +0000 (14:14 +0200)] 
doc: help Doxygen find our files.

* doc/Doxyfile.in (INCLUDE_PATH): here.

12 years agoFix Doxygen generation and clean-up.
Tim Landscheidt [Tue, 27 Mar 2012 19:28:02 +0000 (19:28 +0000)] 
Fix Doxygen generation and clean-up.

* doc/Doxyfile.in: Amend OUTPUT_DIRECTORY.
* doc/local.mk (html-local): Amend working directory.
(CLEANDIRS): Fix "html", remove "latex".

12 years agoFix Doxygen comment.
Tim Landscheidt [Tue, 27 Mar 2012 19:40:36 +0000 (19:40 +0000)] 
Fix Doxygen comment.

* src/InadequacyList.h: s#</t>#</tt>#.

12 years agoc++: more YY_NULL
Akim Demaille [Sun, 1 Apr 2012 11:15:41 +0000 (13:15 +0200)] 
c++: more YY_NULL

Caught by maintainer-check-g++.
* data/glr.c, data/lalr1.cc, data/yacc.c, tests/cxx-type.at,
* tests/glr-regression.at, tests/push.at:
When simple to do, avoid expliciting the null ptr.
Otherwise use YY_NULL.
(cherry picked from commit eeaf1dc646048e464d97f6a572b8894632e6e47a)

Conflicts:

data/glr.c
data/lalr1.cc
tests/cxx-type.at

12 years agoc++: more YY_NULL
Akim Demaille [Sun, 1 Apr 2012 11:15:41 +0000 (13:15 +0200)] 
c++: more YY_NULL

Caught by maintainer-check-g++.
* data/glr.c, data/lalr1.cc, data/yacc.c, tests/cxx-type.at,
* tests/glr-regression.at, tests/push.at:
When simple to do, avoid expliciting the null ptr.
Otherwise use YY_NULL.

12 years agoMerge remote-tracking branch 'origin/maint'
Akim Demaille [Sun, 1 Apr 2012 10:56:55 +0000 (12:56 +0200)] 
Merge remote-tracking branch 'origin/maint'

* origin/maint:
  bump to 2012 in skeletons.
  build: remove ancient Autoconf tests.
  doc: c++: complete the location documentation.
  c++: locations: provide convenience constructors.
  c++: locations: remove useless "inline".
  glr: do not use locations when they are not requested
  c++: use nullptr for C++11.
  build: simplify and improve the compiler warnings for tests.
  gnulib: update.
  maint: formatting changes.
  NEWS: update.
  Java: Fix syntax error handling without error token.
  tests: beware of -pedantic on large #line numbers.
  tests: when using the C++ compiler, use its flags too.

Conflicts:
data/glr.c
data/glr.cc
data/lalr1.cc
data/location.cc
data/yacc.c
tests/Makefile.am

12 years agobump to 2012 in skeletons.
Akim Demaille [Sun, 1 Apr 2012 10:15:19 +0000 (12:15 +0200)] 
bump to 2012 in skeletons.

* data/glr.c, data/glr.cc, data/lalr1.cc, data/lalr1.java,
* data/location.cc, data/yacc.c: Bump copyright year ranges.

12 years agobuild: remove ancient Autoconf tests.
Akim Demaille [Sun, 1 Apr 2012 09:14:28 +0000 (11:14 +0200)] 
build: remove ancient Autoconf tests.

lib/subpipe.c was removed in 47fa574761319b0a422691223c9b8a9a72f36aa2.

* m4/subpipe.m4: Remove.
* configure.ac (BISON_PREREQ_SUBPIPE): Remove.

12 years agodoc: c++: complete the location documentation.
Akim Demaille [Sat, 31 Mar 2012 07:46:12 +0000 (09:46 +0200)] 
doc: c++: complete the location documentation.

* data/location.cc (position::initialize, location::initialize):
Also accept line and column, with default values.
* doc/bison.texinfo (C++ position, C++ location): New nodes.
Describe more thoroughly these classes.
Fix several Texinfo misuses.

12 years agoc++: locations: provide convenience constructors.
Akim Demaille [Tue, 23 Sep 2008 11:49:41 +0000 (13:49 +0200)] 
c++: locations: provide convenience constructors.

* data/location.cc (position::position): Accept file, line and
column as arguments with default values.
Always qualify initial line and column literals as unsigned.
(location::location): Provide convenience constructors.
(cherry picked from commit 0634493cdde92cbdb8d9fb95a5bebe596bb53798)

Conflicts:

ChangeLog-2012
data/location.cc

12 years agoc++: locations: remove useless "inline".
Akim Demaille [Fri, 30 Mar 2012 14:45:47 +0000 (16:45 +0200)] 
c++: locations: remove useless "inline".

* data/location.cc: "inline" is implicit when defining
methods in the class definition.

12 years agoglr: do not use locations when they are not requested
Akim Demaille [Sat, 31 Mar 2012 07:45:59 +0000 (09:45 +0200)] 
glr: do not use locations when they are not requested

When the test suite runs with -O2 and warnings enabled, G++
complains of locations being used, but not initialized.
The simplest is to not use locations.

* data/glr.c (b4_locuser_formals, b4_locuser_args): New.
Use them when locations should not be used.
Use b4_locations_if where appropriate.
(yyuserAction): Modify the order to the arguments to make
it more alike the other routines, and to make use of
b4_locuser_args simpler.

12 years agoc++: use nullptr for C++11.
Akim Demaille [Fri, 30 Mar 2012 13:50:45 +0000 (15:50 +0200)] 
c++: use nullptr for C++11.

C++11 introduces "nullptr" which plays the role of C's NULL, in
replacement of "0".  Fix the C++ skeletons to avoid warnings about
uses of "0" in place of "nullptr", and improve C skeletons to also use
this "nullptr" when compiled with a C++11 compiler.

* configure.ac: More C++ warnings.
* NEWS (2.5.1): Document this.
* data/c++.m4, data/c.m4 (b4_null_define): New.
(b4_null): Use YY_NULL instead of 0.
* data/glr.c, data/lalr1.cc, data/location.cc, data/yacc.c:
Call b4_null_define/b4_null where appropriate.
Use YY_NULL instead of NULL.
* data/location.cc (initialize): Accept a default argument,
YY_NULL.
* tests/actions.at, tests/calc.at: Adjust.

* data/glr.c, lib/libiberty.h, src/system.h (__attribute__):
Do not disable it when __STRICT_ANSI__ is defined, as, for
instance, it disables the __attribute__((unused)) which
protects us from some compiler warnings.
This was already done elsewhere in Bison, in 2001, see
4a0d89369599a2cea01f4fbdf791f426a02cb5a3.
* tests/regression.at: Adjust output.

12 years agobuild: simplify and improve the compiler warnings for tests.
Akim Demaille [Tue, 27 Mar 2012 14:20:34 +0000 (16:20 +0200)] 
build: simplify and improve the compiler warnings for tests.

* configure.ac (warn_common, warn_c, warn_cxx): New.
Use them to compute independently the options supported
by the C and C++ compilers.
Don't AC_SUBST the variables passed to gl_WARN_ADD: it
does it for us.
(WARN_CFLAGS_TEST, WARN_CXXFLAGS_TEST): Don't aggregate
$WARN_CFLAGS and $WARN_CXXFLAGS in them now, leave it
to atlocal.in.
(O0CFLAGS, O0CXXFLAGS): Move their definition to...
* tests/atlocal.in: here.
Be more systematic between C and C++.
Reorder to factor between variables.
Propagate all of the variables when --compile-c-with-cxx.

12 years agognulib: update.
Akim Demaille [Fri, 30 Mar 2012 11:41:01 +0000 (13:41 +0200)] 
gnulib: update.