Re: [sqlite] -Wsign-compare warning in lempar.c

2018-02-09 Thread Richard Hipp
On 2/9/18, Richard Damon  wrote:
> On 2/8/18 9:21 AM, Nick Wellnhofer wrote:
>> With the latest Lemon code, I get a warning under GCC with
>> -Wsign-compare:
>>
>> warning: comparison between signed and unsigned integer expressions
>> [-Wsign-compare]
>>  assert( i>=0 &&
>> i+YYNTOKEN<=sizeof(yy_lookahead)/sizeof(yy_lookahead[0]) );
>>^
>>
>> Nick
> Looks like not a problem. The danger of comparing a signed value to an
> unsigned is that you can get an unexpected result if the signed value is
> negative, but in this case we first check that i is positive, so that
> issue never occurs.

Correct.  The previous term of the assert() guarantees that variable i
is non-negative.

This is nuisance warning (as are most warnings, actually).  We'll fix
it though, just to reduce bandwidth on the mailing list.

-- 
D. Richard Hipp
d...@sqlite.org
___
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


Re: [sqlite] -Wsign-compare warning in lempar.c

2018-02-09 Thread Richard Damon

On 2/8/18 9:21 AM, Nick Wellnhofer wrote:
With the latest Lemon code, I get a warning under GCC with 
-Wsign-compare:


warning: comparison between signed and unsigned integer expressions 
[-Wsign-compare]
 assert( i>=0 && 
i+YYNTOKEN<=sizeof(yy_lookahead)/sizeof(yy_lookahead[0]) );

   ^

Nick 
Looks like not a problem. The danger of comparing a signed value to an 
unsigned is that you can get an unexpected result if the signed value is 
negative, but in this case we first check that i is positive, so that 
issue never occurs.


--
Richard Damon

___
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users