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