Re: i386 clang: fix binutils build

2017-06-05 Thread Todd C. Miller
On Mon, 05 Jun 2017 09:18:31 -0600, "Todd C. Miller" wrote: > If you assign 0x to a long on i386 the compiler should warn > about it since it is too big to fit unless the value is unsigned. > That is why ULONG_MAX is defined as defined as 0xUL on > 32-bit platforms. I suppose it

Re: i386 clang: fix binutils build

2017-06-05 Thread Todd C. Miller
On Mon, 05 Jun 2017 16:32:01 +0200, Christian Weisgerber wrote: > Todd C. Miller: > > > I think you want 0xU, not 0xL. Otherwise you will > > have the same issue on i386. > > ??? > > We need a constant that comes out as the "long" value > 0x on 64-bit

Re: i386 clang: fix binutils build

2017-06-05 Thread Christian Weisgerber
Todd C. Miller: > I think you want 0xU, not 0xL. Otherwise you will > have the same issue on i386. ??? We need a constant that comes out as the "long" value 0x on 64-bit platforms 0x on 32-bit platforms (degenerate case) -- Christian

Re: i386 clang: fix binutils build

2017-06-04 Thread Todd C. Miller
I think you want 0xU, not 0xL. Otherwise you will have the same issue on i386. - todd

i386 clang: fix binutils build

2017-06-02 Thread Christian Weisgerber
On i386, binutils-2.17/gas fails to build with clang: /usr/src/gnu/usr.bin/binutils-2.17/gas/config/tc-i386.c:2107:53: error: signed shift result (0x1) requires 34 bits to represent, but 'offsetT' (aka 'long') only has 32 bits [-Werror,-Wshift-overflow] &&