bison-patches
[Top][All Lists]
Advanced

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

Re: [PATCH] --warnings=no-XXX [RFC] --warnings categories


From: Akim Demaille
Subject: Re: [PATCH] --warnings=no-XXX [RFC] --warnings categories
Date: Sat, 22 Nov 2008 22:51:15 +0100


Le 22 nov. 08 à 05:13, Di-an JAN a écrit :

On Fri, 21 Nov 2008, Akim Demaille wrote:

Di-an, could you please push in master the patch of yours that warns about the missing ; and adds them? We can have it in 2.5 to drop the ; feature completely starting with 2.6 or so.

Do you want to keep the warning forever or just for 2.5?

I was thinking about 2.5 only.

Should it be just for default language, default skeleton, and --yacc?
It should work for C, C++, and Java.

No, it should be for C only, same cases as for Joel's patch.

Thinking about it some more, I agree with Joel[2] that this patch[1] is
too complicated to be worthwhile.

I agree too (and discussed about it privately with Joel, I'm not just overruling him here), I very much dislike all that quantity of code for just a single semicolon. Yet backward compatibility does matter. I have no idea how many people are suffering now from this change in Bison's behavior. They have better things to do in there lives that having to understand that someone left out a semicolon in a Bison grammar.

That's why I believe that we need to send the grammar maintainers a strong signal: that what your patch does. Since it's only a warning, it should protect users from broken tarballs, and hopefully, it should give a chance to maintainers to fix their packages.

We could leave the change forever too. I just don't like the idea of propagating a historical mistake. This means Bison will have this forever, and I don't feel confortable with this. Yet this might be the most pragmatic approach.

<sigh>

I don't know. I have no strong opinion now that Joel's patch fixes most cases while preserving the cases that need not be broken by this. I just like the idea of being able to get rid of this in the future, thanks to a temporary warning.

I mean, trying to handle preprocessing
directives... I didn't even thought about it until the testsuite failed. Bison really shouldn't do the job of the compiler, whenever possible[3].
I think we can do without the warning as there will be a compiler
error whenever the warning issued correctly.

I'm not that sure. Beware that users who install tarballs need not be package maintainers. They just want "./configure && make && make check && sudo make install" to DTRT. And I hate wasting their time, they have better things to live than tracking missing semicolons.

The only reason to bother is for bug-compatibility, and the reported
problem[4] is GCC's sample frontend treelang, which is not supposed to
be actually used, and is removed from GCC 4.4 (in development)[5].

Interesting.  I wasn't aware of this, thanks for the pointers.



reply via email to

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