On Fri, 11 Aug 2006, Paul Eggert wrote: > "Joel E. Denny" <[EMAIL PROTECTED]> writes: > > > I configure bison with --enable-gcc-warnings. I tried adding a new token > > to parse-gram.y today, but it failed to compile as gcc complained of > > comparisons between signed and unsigned for yycheck. > > In practice that warning causes a lot of makework, and I think it > harms more than it helps since the extra casts might disguise other > problems.
It occurs to me now that I really cast the wrong thing. In yycheck[i]==other_value, I shouldn't have cast yycheck[i] to int. I should have cast other_value to unsigned int. That should be ok since the code is obviously assuming other_value is greater than zero, or the comparison would be broken anyway. Would that cast disguise any problems that -Wno-sign-compare doesn't also disguise? > I installed the following patch to disable that warning > instead of having the casts. I fear we may lose legitimate warnings. It seems better to lose this warning only for some well examined cases rather than for all future cases. Joel
