On 2 Dec 2006, at 22:30, Joel E. Denny wrote:
I do not know about Savannah.
Oh, here:
http://cvs.savannah.gnu.org/viewcvs/?root=bison
Thank you.
Lest I forget about it, here is the principle that may or may not be
of importance for code placement commands:
If the language changes, then the parsing of the code part may need
to change depending on which output language is used. This may be
limited to the treatment of "{" and "}" insides the comments and
strings and characters of the output language.
I therefore think there should be a command %code which changes
parsing in this way. By contrast, if %define is used output macros,
one would expect it to be verbatim.
And such a command %code might need to recognize different Bison
contexts. This is already done in implementation, I think, when the
$k variables, etc., are translated in the actions, which should not
be done in other code placement. I do no know of such a context
switch that will affect the user, though.
And for the other %<name> commands, one might separate those that
belong to the grammar language, and others that merely are compiler
options (corresponding to %pragma in C/C++ preprocessors). This will
be mainly be of importance if the .y files should be compilable with
another compiler than Bison, in which case one would want the Bison
options to be ignored. Just a contingency comment.
Hans Aberg