Hi,

For a while I've been getting warnings like
/home/andres/src/postgresql/src/backend/utils/adt/inet_cidr_ntop.c: In function 
‘inet_cidr_ntop_ipv6’:
/home/andres/src/postgresql/src/backend/utils/adt/inet_cidr_ntop.c:205:11: 
warning: left shift of negative value [-Wshift-negative-value]
    m = ~0 << (8 - b);
           ^~
/home/andres/src/postgresql/src/backend/utils/adt/network.c: In function 
‘inetmi’:
/home/andres/src/postgresql/src/backend/utils/adt/network.c:1482:24: warning: 
left shift of negative value [-Wshift-negative-value]
    res |= ((int64) -1) << (byte * 8);
                        ^~
/home/andres/src/postgresql/src/backend/utils/adt/varbit.c: In function 
‘bitfromint4’:
/home/andres/src/postgresql/src/backend/utils/adt/varbit.c:1546:16: warning: 
left shift of negative value [-Wshift-negative-value]
    val |= (-1) << (srcbitsleft + 8 - destbitsleft);
                ^~
/home/andres/src/postgresql/src/backend/utils/adt/varbit.c: In function 
‘bitfromint8’:
/home/andres/src/postgresql/src/backend/utils/adt/varbit.c:1626:16: warning: 
left shift of negative value [-Wshift-negative-value]
    val |= (-1) << (srcbitsleft + 8 - destbitsleft);

If I understand C99 correctly, the behaviour of a left-shift of a
negative number is undefined (6.5.7 4.).  In C89 the spec was very
unclear about that.

Greetings,

Andres Freund


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to