[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: %union ... {

From: Akim Demaille
Subject: Re: %union ... {
Date: Tue, 20 Jun 2006 13:34:37 +0200
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux)

>>> "Paul" == Paul Eggert <address@hidden> writes:

[Hum... This message never left my machine.]

 > Akim Demaille <address@hidden> writes:
 >> It's just that I don't think we should worry that much for a careless
 >> user.

 > In this particular case, since it's not too much trouble, let's worry
 > it, since we want Bison to be a drop-in replacement for BSD Yacc (even
 > for careless users :-).

It is much trouble: the syntax depends on the language which is used,
and I don't think bison should be aware of intricacies of the target
language, only m4 should.

 >> If we want to set the user really free, then let's extend the grammar
 >> with more than just ID, for instance a STRING, or even BRACED_CODE.

 > I don't see why that would be useful, and in the case of BRACED_CODE
 > it might even lead to weird behavior by Bison if the user forgets the
 > second % in "%union { ... } %{ .... %}".

Well, of course if the user is wrong, it may go wrong :)

 > Since this is purely for compatibility I think that all we really
 > need to support is what's used by BSD Yacc + C grammars, or perhaps
 > BSD Yacc + C++ if some people actually use that combination.  If
 > you think it unlikely that C++ programers use "%union foo::bar
 > {...}" then let's just support single identifiers; that should be
 > enough.

Good enough for me.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]