This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: gcc-current: badly worded warning?


On 30 May 2007 18:05, Andreas Schwab wrote:

> Lothar Werzinger writes:
> 
>> Eyal Lebedinsky wrote:
>> 
>>> I see two kinds of warnings:
>>> warning: logical '||' with non-zero constant will always evaluate as true
>>> warning: logical '&&' with non-zero constant will always evaluate as true
>>> 
>>> The first statement is true, the second false. It can say (if the case is
>>> such) warning: logical '&&' with zero constant will always evaluate as
>>> false and even warn of warning: logical '&&' with non-zero constant will
>>> have no effect 
>> 
>> That depends, if the non-zero constant is the LHS of the && operator the
>> warning is IMHO correct.
> 
> 1 && 0 is still 0.

  But the 0 will never be evaluated.  It's more significant in a case such as
"<const> && <function call>".


    cheers,
      DaveK
-- 
Can't think of a witty .sigline today....


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]