Bug#462004: FTBFS with GCC 4.3: width of 'ignore' exceeds its type

2008-03-11 Thread François Pinard

[Martin Michlmayr]


Your package fails to build with GCC 4.3.  Version 4.3 has not been
released yet but I'm building with a snapshot in order to find errors
and give people an advance warning.



You can reproduce this problem with gcc-4.3 or gcc-snapshot from
unstable.



Automatic build of recode_3.6-14 on em64t by sbuild/amd64 0.53

...

gcc -DLIBDIR=\/usr/lib\ -DHAVE_CONFIG_H -I.. -I. -I../lib -I../libiconv -g 
-Wall -D_REENTRANT -O2 -c charname.c  -fPIC -DPIC -o .libs/charname.lo
In file included from common.h:140,
 from charname.c:20:
recodext.h:221: error: width of 'ignore' exceeds its type
make[3]: *** [charname.lo] Error 1



Remove the bit-field and it will work.


Hi, Martin, Debian people, and Recode pre-testers.

This should be corrected for the next release of Recode.  Thanks!

Instead of removing the bit-field, I reduced it from 2 to 1, as there 
are other bool fields having 1 as a bit field in the same file, and this 
does not apparently generate recent problems from other testers.


But I'm pretty sure that if I once used 2 instead of 1, it came from the 
fact, when bool is not available and rather made an enum of 0 and 1, 
that some compiler (I do not remember which) saw 0 and 1 as signed 
integers (while I was thinking of those two constants as unsigned), and 
complained that 1 as a bit field was too small, not having enough room
for the sign bit any integer should have.  I do remember I was not happy 
being forced to use 2 bits for holding a boolean.


While it is true that the bit field could be made smaller, and more 
tight for the value it receives, I'm rather surprised to see that this 
will be an error in some incoming GNU C compiler.  A warning, I would 
easily understand.  But an error?  Does it mean that the programmer is 
about to loose, with this incoming compiler, the freedom of deciding the 
precise bit allocation of his fields?  It looks pretty wrong to me.  
What is the rationale?


--
François Pinard   http://pinard.progiciels-bpi.ca




Bug#462004: FTBFS with GCC 4.3: width of 'ignore' exceeds its type

2008-01-21 Thread Martin Michlmayr
Package: recode
Version: 3.6-14
Usertags: ftbfs-gcc-4.3

Your package fails to build with GCC 4.3.  Version 4.3 has not been
released yet but I'm building with a snapshot in order to find errors
and give people an advance warning.

You can reproduce this problem with gcc-4.3 or gcc-snapshot from
unstable.

 Automatic build of recode_3.6-14 on em64t by sbuild/amd64 0.53
...
 gcc -DLIBDIR=\/usr/lib\ -DHAVE_CONFIG_H -I.. -I. -I../lib -I../libiconv -g 
 -Wall -D_REENTRANT -O2 -c charname.c  -fPIC -DPIC -o .libs/charname.lo
 In file included from common.h:140,
  from charname.c:20:
 recodext.h:221: error: width of 'ignore' exceeds its type
 make[3]: *** [charname.lo] Error 1

Remove the bit-field and it will work.

-- 
Martin Michlmayr
http://www.cyrius.com/



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]