Hi all,

A bunch of patches to check and enforce the kind of the variables.
The documentation is catching up, but there are still things to
document and check (e.g., the handling of -D/-F).

I have chosen to use -Wdeprecated warnings even for variables introduced
in this release, as I have been spreading betas of it quite widely.
It would be unfair for early adopter, and it does not cost much to
maintain it this way.

Some of the messages are unpleasant, but I don't know if I'll spend
time on improving them.  For instance on

  %define namespace foo

you'll get

  /tmp/foo.y:1.9-17: warning: deprecated directive, use '%define api.namespace 
foo' [-Wdeprecated]
   %define namespace foo
           ^^^^^^^^^
  /tmp/foo.y:1.9-17: warning: %define variable 'api.namespace' requires '{...}' 
values [-Wdeprecated]
   %define namespace foo
           ^^^^^^^^^

whereas

  /tmp/foo.y:1.9-17: warning: deprecated directive, use '%define api.namespace 
{foo}' [-Wdeprecated]
   %define namespace foo
           ^^^^^^^^^

would be nicer.

Akim Demaille (9):
  muscle: factor conditionals on defined %define variables
  muscle: factor the kind check in M4
  muscle: factor the computation of variable names
  muscle: factor the handling of used variables
  muscle: factor the field retrieval
  muscle: minor simplification which uncovers a missing warning
  muscle: minor refactoring
  muscle: let -D/-F support the three kinds of %define variable values
  muscle: enforce definition syntax for keyword variables

 NEWS             |   2 +
 data/bison.m4    |  60 +++++++++++++++------
 data/c++.m4      |   6 +++
 doc/bison.texi   |  12 ++---
 src/getargs.c    |  29 ++++++++---
 src/muscle-tab.c | 155 ++++++++++++++++++++++++++++++++++++-------------------
 tests/calc.at    |  19 ++++---
 tests/input.at   |  47 +++++++++++++++--
 8 files changed, 232 insertions(+), 98 deletions(-)

-- 
1.8.2


Reply via email to