On Fri, 16 Jun 2006, Paul Eggert wrote:
> "Joel E. Denny" <[EMAIL PROTECTED]> writes:
>
> > They're definitions mostly as opposed to just declarations. I imagine
> > that's why it's called %defines and --defines. So, I decided %pre-defines
> > and %post-defines makes more sense.
>
> This all sounds OK (in that I can't simplify it much more :-) except
> that the names are still confusing. "%pre-defines" sounds like
> predefined symbols, but then "%post-defines" would be -- what --
> postdefined symbols?
I modeled this after pre-prologue and post-prologue. (Speaking of
confusing names... pre=before, post=after, but the pre-prologue and the
post-prologue are not before and after the prologue. They *are* the
prologue, right? Or maybe I'm not clear on what the prologue is
considered to be.)
Given that it requires the user to supply an arbitrary code block, I'm not
sure users would actually think that %pre-defines means predefined (as in
defined by Bison or the compiler) symbols. Relative to Bison symbols, the
stuff in a %pre-defines is pre-defined, and the stuff in a %post-defines
is post-defined.
Would %defines-pre and %defines-post be any better to you? That would be
just as fine with me.
> How about if we call them both "%defines" and decide which is which
> depending on context? That would match %{...%}'s behavior.
That's basically the same as my first patch... except that I called it
%header. That ordering is what I felt made things confusing and too
inflexible.
Joel