This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
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....