]> git.saurik.com Git - bison.git/log
bison.git
12 years agolalr1.cc: no longer require %defines.
Akim Demaille [Mon, 30 Jul 2012 13:49:28 +0000 (15:49 +0200)] 
lalr1.cc: no longer require %defines.

* data/lalr1.cc: Generate the parser header only when %defines is
passed.
* tests/calc.at: Check it.

12 years agoskeletons: style changes
Akim Demaille [Mon, 30 Jul 2012 13:32:29 +0000 (15:32 +0200)] 
skeletons: style changes

* data/glr.c, data/lalr1.cc: Use more consistent comments,
and YY_NULL declaration.

12 years agoglr.cc, lalr1.cc: define b4_shared_declarations
Akim Demaille [Mon, 30 Jul 2012 13:30:31 +0000 (15:30 +0200)] 
glr.cc, lalr1.cc: define b4_shared_declarations

* data/glr.cc, data/lalr1.cc: here.
The name is no longer right, but at least it is consistent with
the other skeletons.

12 years agoglr.cc: no longer require location support
Akim Demaille [Mon, 30 Jul 2012 12:40:18 +0000 (14:40 +0200)] 
glr.cc: no longer require location support

* data/glr.cc: Use b4_locations_if where appropriate.
* data/lalr1.cc: M4 quotation changes to highlight code duplication
with glr.cc.
* tests/calc.at: Check glr.cc with and without %location.
While at it, fuse multiple %parse-params into one.
* tests/actions.at: Simplify.
* NEWS: Doc this.
Some other wording changes.

12 years agoregen
Akim Demaille [Fri, 27 Jul 2012 14:46:15 +0000 (16:46 +0200)] 
regen

12 years agoMerge remote-tracking branch 'origin/maint'
Akim Demaille [Fri, 27 Jul 2012 14:22:45 +0000 (16:22 +0200)] 
Merge remote-tracking branch 'origin/maint'

* origin/maint: (29 commits)
  regen
  synclines: remove spurious empty line
  also support $<foo>$ in the %initial-action
  skeletons: b4_dollar_pushdef and popdef to simpify complex definitions
  regen
  printer/destructor: translate only once
  factor the handling of m4 escaping
  news: schedule the removal of the ";" hack
  style changes in the scanners
  regen
  support $<tag>$ in printers and destructors
  scan-code: factor the handling of the type in $<TYPE>$
  muscles: fix another occurrence of unescaped type name
  glr.cc: fix the handling of yydebug
  gnulib: update
  formatting changes
  tests: fix an assertion
  tests: adjust to GCC 4.8, which displays caret errors
  be sure to properly escape type names
  obstack_quote: escape and quote for M4
  muscles: shuffle responsabilities
  muscles: make private functions static
  muscles: rename private functions/macros
  obstack_escape: escape M4 characters
  remove dead macro
  maint: style changes
  doc: avoid problems with case insensitive file systems
  configure: fix botched quoting
  news: fix typo.

Conflicts:
NEWS
data/c.m4
data/glr.cc
data/lalr1.cc
examples/rpcalc/local.mk
src/muscle-tab.h
src/output.c
src/parse-gram.c
src/parse-gram.h
src/parse-gram.y
src/scan-code.l
src/symlist.c
src/symlist.h
src/symtab.h
tests/calc.at

12 years agoregen
Akim Demaille [Fri, 27 Jul 2012 12:52:55 +0000 (14:52 +0200)] 
regen

12 years agosynclines: remove spurious empty line
Akim Demaille [Fri, 27 Jul 2012 12:52:23 +0000 (14:52 +0200)] 
synclines: remove spurious empty line

* data/bison.m4 (b4_syncline): Do not start with an empty line.

12 years agoalso support $<foo>$ in the %initial-action
Akim Demaille [Fri, 27 Jul 2012 12:20:00 +0000 (14:20 +0200)] 
also support $<foo>$ in the %initial-action

scan-code.l is already passing argument to b4_dollar_dollar for the
initial acton, but its definition (of b4_dollar_dollar) does not use
this argument.

Generalize this definition, and use it for the %initial-action too.

* data/c.m4 (b4_dollar_dollar_, b4_dollar_pushdef, b4_dollar_popdef):
Instead of expecting a pointer, require a value, and use ".".
Since they are now generic enough, move to...
* data/c-like.m4: this new file.
* data/c.m4, data/java.m4: Load it.
* data/glr.c, data/lalr1.cc, data/lalr1.java, data/yacc.c: Use
b4_dollar_pushdef for the %initial-action.
* tests/actions.at: Check that.
* data/Makefile.am: Adjust.
* NEWS, doc/bison.texi: Document.

12 years agoskeletons: b4_dollar_pushdef and popdef to simpify complex definitions
Akim Demaille [Fri, 27 Jul 2012 11:47:24 +0000 (13:47 +0200)] 
skeletons: b4_dollar_pushdef and popdef to simpify complex definitions

M4 is really making it uselessly hard to define macros that define
macros.
* data/c.m4 (b4_dollar_pushdef, b4_dollar_popdef): New.
Use it.

12 years agoregen
Akim Demaille [Fri, 27 Jul 2012 10:53:46 +0000 (12:53 +0200)] 
regen

12 years agoprinter/destructor: translate only once
Akim Demaille [Fri, 27 Jul 2012 10:47:02 +0000 (12:47 +0200)] 
printer/destructor: translate only once

Currently "%printer {...} a b c d e f" translates the {...} six times.
Not only is this bad for time and space, it also issues six times the
same warnings.

* src/symlist.h, src/symlist.c (symbol_list_destructor_set)
(symbol_list_printer_set): Take the action as code_props instead of
const char *.
* src/parse-gram.y: Translate these actions here.
* src/scan-code.h: Comment change.
* tests/input.at: Check that warnings are issued only once.

12 years agofactor the handling of m4 escaping
Akim Demaille [Fri, 27 Jul 2012 09:22:22 +0000 (11:22 +0200)] 
factor the handling of m4 escaping

The conversion from @ to @@ and so forth is coded is too many
different places.  Factor, a bit.

* src/scan-code.l: Instead of duplicating the logic of obstack_escape,
use it.
It sure is less efficient, but the cost is negligible.
This allows to factor rules that are alike.
And to factor some start-condition clauses.
* tests/input.at (Stray $ or @): New.
* NEWS: Document it.

12 years agonews: schedule the removal of the ";" hack
Akim Demaille [Fri, 27 Jul 2012 10:19:01 +0000 (12:19 +0200)] 
news: schedule the removal of the ";" hack

scan-code.l is significantly more complex because of this.

* NEWS: Doc it.

12 years agostyle changes in the scanners
Akim Demaille [Fri, 27 Jul 2012 09:11:19 +0000 (11:11 +0200)] 
style changes in the scanners

* src/scan-code.l, src/scan-skel.l: Use a more traditional indentation
style for start-conditions.
Prefer "continue" to a comment, for empty actions.
Strip useless {}.
Remove useless start-condition clauses.

12 years agoregen
Akim Demaille [Thu, 26 Jul 2012 15:19:04 +0000 (17:19 +0200)] 
regen

12 years agosupport $<tag>$ in printers and destructors
Akim Demaille [Thu, 26 Jul 2012 14:52:35 +0000 (16:52 +0200)] 
support $<tag>$ in printers and destructors

* src/scan-code.l (SC_SYMBOL_ACTION): Accept $<tag>$, not just $$.
* data/c.m4 (b4_dollar_dollar_): New.
(b4_symbol_actions): Let b4_dollar_dollar use b4_dollar_dollar_.
* NEWS, doc/bison.texi: Document it.
* tests/actions.at: Check this for C and C++.

12 years agoscan-code: factor the handling of the type in $<TYPE>$
Akim Demaille [Thu, 26 Jul 2012 10:06:28 +0000 (12:06 +0200)] 
scan-code: factor the handling of the type in $<TYPE>$

* src/scan-code.l (fetch_type_name): New.
(handle_action_dollar): Use it.
(gt_ptr): Remove, useless.

12 years agomuscles: fix another occurrence of unescaped type name
Akim Demaille [Thu, 26 Jul 2012 12:41:55 +0000 (14:41 +0200)] 
muscles: fix another occurrence of unescaped type name

* src/output.c (quoted_output): Split into...
(quoted_output, string_output): these.
Use the former when outputting a type_name.
* tests/input.at: Check this case.
* src/symtab.h: Comment changes.

12 years agoglr.cc: fix the handling of yydebug
Akim Demaille [Thu, 26 Jul 2012 14:44:45 +0000 (16:44 +0200)] 
glr.cc: fix the handling of yydebug

* data/glr.cc (yydebug_): Remove, unused.
(set_debug_level, debug_level): Work on yydebug instead.
* doc/bison.texi, NEWS: Document this.

12 years agognulib: update
Akim Demaille [Thu, 26 Jul 2012 11:28:58 +0000 (13:28 +0200)] 
gnulib: update

12 years agoformatting changes
Akim Demaille [Thu, 26 Jul 2012 12:41:20 +0000 (14:41 +0200)] 
formatting changes

* src/symtab.h: here.

12 years agotests: fix an assertion
Akim Demaille [Thu, 26 Jul 2012 14:07:26 +0000 (16:07 +0200)] 
tests: fix an assertion

* tests/local.at (AT_YYLEX_DEFINE): Be sure to check the array
against its length, not its size in bytes.

12 years agotests: adjust to GCC 4.8, which displays caret errors
Akim Demaille [Thu, 26 Jul 2012 13:20:50 +0000 (15:20 +0200)] 
tests: adjust to GCC 4.8, which displays caret errors

With GCC 4.8, the tests on synclines are skipped.  Transform

  input.y:1:2: error: #error "1"
   #error "1"
    ^

into

  input.y:1: #error "1"

* tests/synclines.at (AT_SYNCLINES_COMPILE): Do it, using Perl instead of
sed.

12 years agobe sure to properly escape type names
Akim Demaille [Thu, 26 Jul 2012 10:14:50 +0000 (12:14 +0200)] 
be sure to properly escape type names

* src/scan-code.l: Use obstack_quote when passing type_name to m4.
* tests/input.at (Code injection): New.
* NEWS: Document it.
Thanks to Paul Eggert for the wording.

12 years agoobstack_quote: escape and quote for M4
Akim Demaille [Thu, 26 Jul 2012 10:12:38 +0000 (12:12 +0200)] 
obstack_quote: escape and quote for M4

* src/system.h (obstack_quote): New.
* src/muscle-tab.c: Use it instead of obstack_escape where applicable.
* src/scan-code.l: Since obstack_quote supports NULL, leave type_name
as NULL instead of defaulting to "".

12 years agomuscles: shuffle responsabilities
Akim Demaille [Thu, 26 Jul 2012 09:49:42 +0000 (11:49 +0200)] 
muscles: shuffle responsabilities

* src/muscle-tab.c (muscle_boundary_grow): Be in charge of quotation,
instead of leaving this to the caller.

12 years agomuscles: make private functions static
Akim Demaille [Thu, 26 Jul 2012 09:40:52 +0000 (11:40 +0200)] 
muscles: make private functions static

* src/muscle-tab.h, src/muscle-tab.c (muscle_boundary_grow)
(muscle_location_grow): Now static.

12 years agomuscles: rename private functions/macros
Akim Demaille [Thu, 26 Jul 2012 09:23:55 +0000 (11:23 +0200)] 
muscles: rename private functions/macros

* src/muscle-tab.c (MUSCLE_COMMON_DECODE, muscle_string_decode)
(muscle_location_decode): Not related to muscles, rename as...
(COMMON_DECODE, string_decode, location_decode): these.

12 years agoobstack_escape: escape M4 characters
Akim Demaille [Thu, 26 Jul 2012 09:19:18 +0000 (11:19 +0200)] 
obstack_escape: escape M4 characters

* src/muscle-tab.h (MUSCLE_OBSTACK_SGROW): This is not related to
muscles, so move to, and rename as...
* src/system.h (obstack_escape): this.
Adjust dependencies.

12 years agoremove dead macro
Akim Demaille [Thu, 26 Jul 2012 10:16:54 +0000 (12:16 +0200)] 
remove dead macro

* src/system.h (DEFAULT_TMPDIR): Remove, unused.

12 years agomaint: style changes
Akim Demaille [Wed, 25 Jul 2012 15:57:57 +0000 (17:57 +0200)] 
maint: style changes

* src/scan-code.l: Remove useless braces.
Formatting changes.
Prefer NULL to 0.
* src/muscle-tab.c, src/system.h: Formatting changes.

12 years agodoc: avoid problems with case insensitive file systems
Akim Demaille [Tue, 24 Jul 2012 11:24:20 +0000 (13:24 +0200)] 
doc: avoid problems with case insensitive file systems

makeinfo --html generates index.html, and the node "Index" will result
in Index.html.  On case insensitive file systems, such as on Mac OS X
by default, this results in a single, invalid, file (Texinfo 4.13).
See http://lists.gnu.org/archive/html/bug-texinfo/2012-07/msg00032.html

* doc/bison.texi (Index): Rename as...
(Index of Terms): this.

12 years agoconfigure: fix botched quoting
Stefano Lattarini [Sat, 21 Jul 2012 15:24:23 +0000 (17:24 +0200)] 
configure: fix botched quoting

* configure.ac: In the AC_SUBST call on 'VALGRIND_PREBISON'.  Without
this change, when running ./configure, I see:

    ...
    checking for valgrind... valgrind
    ./configure: line 35221: -q: command not found
    checking for Java compiler... gcj -C -fsource=1.3 -ftarget=1.4
    ...

Copyright-paperwork-exempt: yes
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoregen
Akim Demaille [Tue, 24 Jul 2012 06:55:26 +0000 (08:55 +0200)] 
regen

12 years agoyystype, yyltype: remove.
Akim Demaille [Tue, 24 Jul 2012 06:53:48 +0000 (08:53 +0200)] 
yystype, yyltype: remove.

* data/c.m4: here.
* NEWS: Doc it.

12 years agoregen
Akim Demaille [Sun, 22 Jul 2012 18:19:11 +0000 (20:19 +0200)] 
regen

12 years agoYYFAIL: remove.
Akim Demaille [Sun, 22 Jul 2012 18:17:54 +0000 (20:17 +0200)] 
YYFAIL: remove.

* data/lalr1.java, data/yacc.c, src/scan-code.l: Remove YYFAIL support.
* NEWS, TODO: Update.

12 years agotodo: update.
Akim Demaille [Sun, 22 Jul 2012 10:36:51 +0000 (12:36 +0200)] 
todo: update.

* TODO: obsolete items.

12 years agoregen.
Akim Demaille [Sun, 22 Jul 2012 18:09:19 +0000 (20:09 +0200)] 
regen.

12 years agospace changes.
Akim Demaille [Sun, 22 Jul 2012 18:08:29 +0000 (20:08 +0200)] 
space changes.

* data/bison.m4 (b4_symbol_action): Remove spurious eol in the output.

12 years agoparser: fix %printer usage.
Akim Demaille [Sun, 22 Jul 2012 16:48:56 +0000 (18:48 +0200)] 
parser: fix %printer usage.

* src/parse-gram.y: Instead of stderr, using yyo.

12 years agoparser: factor the handling of code_props
Akim Demaille [Sun, 22 Jul 2012 16:45:32 +0000 (18:45 +0200)] 
parser: factor the handling of code_props

* src/parse-gram.y: Now that %printer and %destructor are treated
equally, let...
(code_props_type): handle them.

12 years agoparser: factor handling of type tags
Akim Demaille [Sun, 22 Jul 2012 16:44:39 +0000 (18:44 +0200)] 
parser: factor handling of type tags

* src/parse-gram.y: Now that <*> and <> are processed like regular
tags, let...
(tag): handle them.

12 years agoregen.
Akim Demaille [Sun, 22 Jul 2012 16:33:11 +0000 (18:33 +0200)] 
regen.

12 years agosimplify the handling of <> and <*>'s code_props.
Akim Demaille [Sun, 22 Jul 2012 15:51:25 +0000 (17:51 +0200)] 
simplify the handling of <> and <*>'s code_props.

Currently they are treated in separated variables, contrary to other
<TYPE> code_props.  This duplicates code (and messages for translators)
uselessly, as demonstrated by the fact that thanks to this patch, now
useless <*> and <> code_props are reported like the others.

* src/parse-gram.y (generic_symlist_item): Treat "<*>" and "<>" as regular
type tags.
* src/symlist.h, src/symlist.c (symbol_list_default_tagged_new)
(symbol_list_default_tagless_new,SYMLIST_DEFAULT_TAGGED)
(SYMLIST_DEFAULT_TAGLESS): Remove.
* src/symtab.h, src/symtab.c (default_tagged_code_props)
(default_tagless_code_props, default_tagged_code_props_set)
(default_tagless_code_props_set): Remove.
(symbol_code_props_get): Default to <*> or <>'s code_props.

* tests/actions.at: Complete expected errors: there are new warnings.
* tests/input.at: Likewise.
(Useless printers or destructors): Extend.

12 years agoallow modification on retrieved code_props.
Akim Demaille [Sun, 22 Jul 2012 15:46:34 +0000 (17:46 +0200)] 
allow modification on retrieved code_props.

The logic to compute the %printer or %destructor to used (i.e., a
code_props) is implemented twice: one, of course, in
symbol_code_props_get, and another time in symbol_check_defined to
record the fact that a code_props is used (so that we can reported
unused ones).  Let the former use the latter.

I would probably use "mutable" in C++ and keep these guys const,
but this is C.  And casting away constness triggers warnings.

* src/scan-code.h, src/scan-code.l (code_props_none): Is not const.
* src/symtab.h, src/symtab.c (symbol_code_props_get): The symbol
is not const.
(symbol_check_defined): Use it.

12 years agomaint: regen.
Akim Demaille [Sun, 22 Jul 2012 14:54:30 +0000 (16:54 +0200)] 
maint: regen.

12 years agomaint: fix bison's own header guards.
Akim Demaille [Sun, 22 Jul 2012 15:11:39 +0000 (17:11 +0200)] 
maint: fix bison's own header guards.

Because I'm using a VPATH build with an absolute srcdir, I have
GRAM__USERS_AKIM_SRC_GNU_BISON_SRC_PARSE_GRAM_H.  Before, I was using
a relative srcdir, and had GRAM_______SRC_PARSE_GRAM_H (coming from
../../).  Let it be GRAM_SRC_PARSE_GRAM_H.

* tests/bison.in: Do not depend on the value of $top_srcdir for
Bison itself.
If we were to use relative paths from .c to .y, we would not have
this problem.

12 years agomaint: add missing const.
Akim Demaille [Sun, 22 Jul 2012 14:41:00 +0000 (16:41 +0200)] 
maint: add missing const.

* src/symtab.h, src/symtab.c (symbol_print): here.

12 years agostyle changes.
Akim Demaille [Sun, 22 Jul 2012 10:28:31 +0000 (12:28 +0200)] 
style changes.

* src/parse-gram.y, src/symtab.c: Space changes.
* src/symtab.h: Comment changes.

12 years agoautoconf: update.
Akim Demaille [Sun, 22 Jul 2012 09:53:31 +0000 (11:53 +0200)] 
autoconf: update.

* submodules/autoconf: here.
No significant changes for our use of m4sugar.m4.

12 years agooutput: no longer use b4_tokens.
Akim Demaille [Sun, 22 Jul 2012 07:11:42 +0000 (09:11 +0200)] 
output: no longer use b4_tokens.

* data/glr.c, data/glr.cc, data/lalr1.cc, data/lalr1.java, data/yacc.c:
Since the previous commit, b4_tokens_define and the like no longer need
b4_tokens.
* src/output.c (token_definitions_output): Remove.

12 years agooutput: use the token list to define the yytokentype
Akim Demaille [Sun, 22 Jul 2012 07:11:37 +0000 (09:11 +0200)] 
output: use the token list to define the yytokentype

There are currently two systems used to pass information about tokens to
m4: the original one, and another, which is used for instance for
printers and destructors, variants etc.  Move to using only the latter.

* data/bison.m4 (b4_symbol_map, b4_token_visible_if)
(b4_token_has_definition, b4_any_token_visible_if, b4_token_format): New.
* data/c++.m4, data/c.m4, data/glr.c, data/java.m4: Adjust to use them.

12 years agotests: fix VPATH issue
Akim Demaille [Fri, 20 Jul 2012 16:18:47 +0000 (18:18 +0200)] 
tests: fix VPATH issue

* examples/test: With an absolute VPATH build, "../" is incorrect.

12 years agonews: fix typo.
Akim Demaille [Fri, 20 Jul 2012 08:00:51 +0000 (10:00 +0200)] 
news: fix typo.

* NEWS: here.
Reported by Ben Pfaff.

12 years agoMerge remote-tracking branch 'origin/maint'
Akim Demaille [Thu, 19 Jul 2012 15:32:01 +0000 (17:32 +0200)] 
Merge remote-tracking branch 'origin/maint'

* origin/maint:
  maint: update gnu-web-doc-update.
  maint: post-release administrivia
  version 2.6
  maint: prepare for release 2.6
  maint: post-release administrivia
  version 2.5.91
  maint: prepare NEWS.
  maint: fix spaces.
  tests: adjust to case where the C compiler is actually a C++ compiler
  tests: fix dependencies
  doc: fix Texinfo command
  maint: Valgrind on OS X.
  tests: be sure that backups are safe.
  maint: dead comment.
  tests: refactor for legibility.
  tests: refactor the bison invocations.
  maint: fix syntax-check ignore patterns.
  gnulib: update
  gnulib: update.
  gnulib: update

Conflicts:
build-aux/Makefile.am
cfg.mk
tests/Makefile.am

12 years agomaint: update gnu-web-doc-update.
Akim Demaille [Thu, 19 Jul 2012 14:24:33 +0000 (16:24 +0200)] 
maint: update gnu-web-doc-update.

* gnulib: here.

12 years agomaint: post-release administrivia
Akim Demaille [Thu, 19 Jul 2012 13:38:29 +0000 (15:38 +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 agoversion 2.6 v2.6
Akim Demaille [Thu, 19 Jul 2012 13:24:23 +0000 (15:24 +0200)] 
version 2.6

* NEWS: Record release date.

12 years agomaint: prepare for release 2.6
Akim Demaille [Thu, 19 Jul 2012 13:20:20 +0000 (15:20 +0200)] 
maint: prepare for release 2.6

* NEWS: here.

12 years agomaint: post-release administrivia
Akim Demaille [Wed, 18 Jul 2012 16:33:25 +0000 (18:33 +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 agoversion 2.5.91
Akim Demaille [Wed, 18 Jul 2012 16:19:32 +0000 (18:19 +0200)] 
version 2.5.91

* NEWS: Record release date.

12 years agomaint: prepare NEWS.
Akim Demaille [Wed, 18 Jul 2012 16:19:12 +0000 (18:19 +0200)] 
maint: prepare NEWS.

12 years agomaint: fix spaces.
Akim Demaille [Wed, 18 Jul 2012 15:56:30 +0000 (17:56 +0200)] 
maint: fix spaces.

* build-aux/Makefile.am: here.

12 years agotests: adjust to case where the C compiler is actually a C++ compiler
Akim Demaille [Tue, 17 Jul 2012 13:20:11 +0000 (15:20 +0200)] 
tests: adjust to case where the C compiler is actually a C++ compiler

* tests/atlocal.in (CC_IS_CXX): New.
* tests/headers.at (Several parsers): Use it.

12 years agotests: fix dependencies
Akim Demaille [Tue, 17 Jul 2012 13:19:37 +0000 (15:19 +0200)] 
tests: fix dependencies

* tests/Makefile.am: we need atconfig and atlocal to be up to date
when calling testsuite.

12 years agodoc: fix Texinfo command
Akim Demaille [Tue, 17 Jul 2012 13:11:47 +0000 (15:11 +0200)] 
doc: fix Texinfo command

* doc/bison.texi: In parens, use @pxref.

12 years agomaint: Valgrind on OS X.
Akim Demaille [Tue, 17 Jul 2012 08:45:00 +0000 (10:45 +0200)] 
maint: Valgrind on OS X.

* configure.ac (VALGRIND_PREBISON): New.
* tests/Makefile.am (maintainer-check-valgrind): Use it.
* etc/darwin11.4.0.supp: New.
* configure.ac, etc/Makefile.am: Use it.
* configure.ac: Disable Valgrind on Mac OS X.
* README-hacking: Explain why.

12 years agotests: be sure that backups are safe.
Akim Demaille [Tue, 17 Jul 2012 12:25:26 +0000 (14:25 +0200)] 
tests: be sure that backups are safe.

* tests/local.at (at_save_special_files): here.

12 years agomaint: dead comment.
Akim Demaille [Tue, 17 Jul 2012 12:08:53 +0000 (14:08 +0200)] 
maint: dead comment.

* etc/README: here.

12 years agotests: refactor for legibility.
Akim Demaille [Tue, 17 Jul 2012 11:40:26 +0000 (13:40 +0200)] 
tests: refactor for legibility.

* tests/local.at (AT_BISON_CHECK_WARNINGS, AT_BISON_CHECK_WARNINGS_):
New.

12 years agotests: refactor the bison invocations.
Akim Demaille [Tue, 17 Jul 2012 10:45:29 +0000 (12:45 +0200)] 
tests: refactor the bison invocations.

* tests/local.at (m4_null_if, AT_BISON_CHECK_): New.

12 years agomaint: fix syntax-check ignore patterns.
Akim Demaille [Tue, 17 Jul 2012 08:35:58 +0000 (10:35 +0200)] 
maint: fix syntax-check ignore patterns.

* cfg.mk: here.

12 years agognulib: update
Akim Demaille [Tue, 17 Jul 2012 07:49:57 +0000 (09:49 +0200)] 
gnulib: update

12 years agognulib: update.
Akim Demaille [Mon, 16 Jul 2012 18:40:18 +0000 (20:40 +0200)] 
gnulib: update.

* gnulib: Update so that gitlog-to-changelog support --srcdir.
* Makefile.am: Use it.

12 years agognulib: update
Akim Demaille [Fri, 6 Jul 2012 13:03:27 +0000 (15:03 +0200)] 
gnulib: update

* bootstrap, build-aux/.gitignore, gnulib, m4/.gitignore: update.

12 years agomaint: minor fixes
Akim Demaille [Fri, 6 Jul 2012 09:15:24 +0000 (11:15 +0200)] 
maint: minor fixes

* NEWS: restore missing entry.
* cfg.mk: Adjust to *.texinfo -> *.texi.
* src/symtab.c: Spaces fixes.

12 years agotests: address g++-4.8 warnings.
Akim Demaille [Fri, 6 Jul 2012 09:07:32 +0000 (11:07 +0200)] 
tests: address g++-4.8 warnings.

list.yy: In function 'yy::parser::symbol_type yylex()':
list.yy:107:29: error: typedef 'token' locally defined but not used
  [-Werror=unused-local-typedefs]
   typedef yy::parser::token token;
                             ^

* tests/c++.at (AT_CHECK_VARIANTS): here.

12 years agoMerge remote-tracking branch 'origin/maint'
Akim Demaille [Fri, 6 Jul 2012 08:58:26 +0000 (10:58 +0200)] 
Merge remote-tracking branch 'origin/maint'

* origin/maint:
  maint: update release instructions
  maint: post-release administrivia
  version 2.5.90
  build: fix gen-ChangeLog call.
  gnulib: update.
  tests: fix SKIP_IF for Java.
  api.prefix: incompatible with %name-prefix.
  api.prefix: strengthen the tests and fix push-parsers.
  skeletons: style changes.
  NEWS: minor changes.
  api.prefix: improve the documentation for YYDEBUG.
  gnulib: update.

Conflicts:
NEWS
cfg.mk
data/bison.m4
doc/bison.texi
m4/.gitignore
tests/calc.at
tests/headers.at

12 years agomaint: update release instructions
Akim Demaille [Fri, 6 Jul 2012 08:14:49 +0000 (10:14 +0200)] 
maint: update release instructions

* README-hacking: here.

12 years agomaint: post-release administrivia
Akim Demaille [Thu, 5 Jul 2012 14:29:06 +0000 (16:29 +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 agoversion 2.5.90
Akim Demaille [Thu, 5 Jul 2012 14:20:44 +0000 (16:20 +0200)] 
version 2.5.90

* NEWS: Record release date.

12 years agobuild: fix gen-ChangeLog call.
Akim Demaille [Thu, 5 Jul 2012 14:09:17 +0000 (16:09 +0200)] 
build: fix gen-ChangeLog call.

* Makefile.am: Be sure to catch errors, and fix option name

12 years agognulib: update.
Akim Demaille [Thu, 5 Jul 2012 13:24:34 +0000 (15:24 +0200)] 
gnulib: update.

* gnulib/build-aux/do-release-commit-and-tag: Fix.

12 years agotests: fix SKIP_IF for Java.
Akim Demaille [Thu, 5 Jul 2012 12:27:09 +0000 (14:27 +0200)] 
tests: fix SKIP_IF for Java.

* tests/local.at (AT_JAVA_COMPILE): here.

12 years agoapi.prefix: incompatible with %name-prefix.
Akim Demaille [Thu, 5 Jul 2012 10:33:42 +0000 (12:33 +0200)] 
api.prefix: incompatible with %name-prefix.

* data/bison.m4: Make it incompatible.
* tests/input.at: Check that it is.

12 years agoapi.prefix: strengthen the tests and fix push-parsers.
Akim Demaille [Thu, 5 Jul 2012 10:33:37 +0000 (12:33 +0200)] 
api.prefix: strengthen the tests and fix push-parsers.

* tests/calc.at: Check api.prefix in addition to %name-prefix.
* tests/headers.at: Check push parsers and pure interface.
* tests/local.at: Use YYLTYPE renamed.
* data/yacc.c (b4_declare_yyparse_push_): Handle api.prefix.
* doc/bison.texi: Style changes.

12 years agoskeletons: style changes.
Akim Demaille [Thu, 5 Jul 2012 09:11:38 +0000 (11:11 +0200)] 
skeletons: style changes.

* data/bison.m4: Define default values after having defined
the support macros.
Kill a dead comment.

12 years agoNEWS: minor changes.
Akim Demaille [Thu, 5 Jul 2012 08:30:47 +0000 (10:30 +0200)] 
NEWS: minor changes.

* NEWS: style changes.

12 years agoapi.prefix: improve the documentation for YYDEBUG.
Akim Demaille [Thu, 5 Jul 2012 08:30:09 +0000 (10:30 +0200)] 
api.prefix: improve the documentation for YYDEBUG.

* doc/bison.texi: Explain how api.prefix is applied to YYDEBUG.

12 years agognulib: update.
Akim Demaille [Thu, 5 Jul 2012 07:37:20 +0000 (09:37 +0200)] 
gnulib: update.

* bootstrap, gnulib: Update.
* cfg.mk (syntax-check): Don't check "error" usage in bison.texi.

12 years agoMerge remote-tracking branch 'origin/maint'
Akim Demaille [Wed, 4 Jul 2012 15:14:35 +0000 (17:14 +0200)] 
Merge remote-tracking branch 'origin/maint'

* origin/maint:
  tests: headers.at: strengthen.
  glr.cc: do not override C++ definitions by C macros.
  YYLLOC_DEFAULT: factor, and don't export it in headers.
  api.prefix: do not use #define to handle YYSTYPE_IS_TRIVIAL etc.
  tests: portability fixes.
  c++: fewer #includes in the headers.
  glr.cc: formatting changes.
  tests: more logs.
  api.prefix: also rename YYDEBUG.

Conflicts:
data/c.m4
data/glr.c
data/glr.cc
data/lalr1.cc
data/yacc.c

12 years agotests: headers.at: strengthen.
Akim Demaille [Wed, 4 Jul 2012 10:04:19 +0000 (12:04 +0200)] 
tests: headers.at: strengthen.

* tests/headers.at (Several headers): Be stricter when checking
the exported macros.

12 years agoglr.cc: do not override C++ definitions by C macros.
Akim Demaille [Wed, 4 Jul 2012 10:00:24 +0000 (12:00 +0200)] 
glr.cc: do not override C++ definitions by C macros.

* data/glr.c: here.
* data/glr.cc: Fix overquotation.
* tests/headers.at: Comment changes.

12 years agoYYLLOC_DEFAULT: factor, and don't export it in headers.
Akim Demaille [Wed, 4 Jul 2012 09:41:06 +0000 (11:41 +0200)] 
YYLLOC_DEFAULT: factor, and don't export it in headers.

* data/c++.m4, data/c.m4 (b4_yylloc_default_define): New.
* data/glr.c, data/glr.cc, data/lalr1.cc, data/yacc.c: Use it.
* data/glr.cc: Do not define YYLLOC_DEFAULT in the header file,
but in the implementation one.

12 years agoapi.prefix: do not use #define to handle YYSTYPE_IS_TRIVIAL etc.
Akim Demaille [Wed, 4 Jul 2012 09:04:52 +0000 (11:04 +0200)] 
api.prefix: do not use #define to handle YYSTYPE_IS_TRIVIAL etc.

The following mixture is insane:

  #define YYSTYPE_IS_TRIVIAL PREFIX_STYPE_IS_TRIVIAL
  #if (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)

since, of course YYSTYPE_IS_TRIVIAL is defined.  Instead we could
define YYSTYPE_IS_TRIVIAL as PREFIX_STYPE_IS_TRIVIAL only when the
later is defined, but let's avoid stacking CPP on top of M4: rather, use

  #if (defined PREFIX_STYPE_IS_TRIVIAL && PREFIX_STYPE_IS_TRIVIAL)

* data/glr.c, data/yacc.c: Use YYSTYPE_IS_TRIVIAL, YYSTYPE_IS_DECLARED,
YYLTYPE_IS_TRIVIAL and YYLTYPE_IS_DECLARED under their api.prefix-renamed
name.

12 years agotests: portability fixes.
Akim Demaille [Wed, 4 Jul 2012 10:04:07 +0000 (12:04 +0200)] 
tests: portability fixes.

Reported by Hydra.

* tests/headers.at (Several headers): Be sure to include config.h
in the files to compile.

12 years agoc++: fewer #includes in the headers.
Akim Demaille [Wed, 4 Jul 2012 07:57:40 +0000 (09:57 +0200)] 
c++: fewer #includes in the headers.

* data/lalr1.cc: Define YY_NULL in the *.cc file, it is not needed
in the header.
* data/location.cc: iosfwd suffices.

12 years agoglr.cc: formatting changes.
Akim Demaille [Mon, 2 Jul 2012 12:55:54 +0000 (14:55 +0200)] 
glr.cc: formatting changes.

* data/glr.cc: here.