Package: libc6-dev Version: 2.11.2-10 Severity: important Tags: patch This has been discussed as a gcc bug, but it is in fact a libc6-dev bug, see bug #561249. Rumored to have been fixed in full glibc, but however not in eglibc (as of trunk of today). Patch attached.
-- System Information: Debian Release: 6.0 APT prefers unstable APT policy: (990, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 2.6.36-trunk-686 (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages libc6-dev depends on: ii libc-dev-bin 2.11.2-10 Embedded GNU C Library: Developmen ii libc6 2.11.2-10 Embedded GNU C Library: Shared lib ii linux-libc-dev 2.6.32-30 Linux support headers for userspac Versions of packages libc6-dev recommends: ii gcc [c-compiler] 4:4.4.5-2 The GNU C compiler ii gcc-4.1 [c-compiler] 4.1.2-29 The GNU C compiler ii gcc-4.2 [c-compiler] 4.2.4-6 The GNU C compiler ii gcc-4.3 [c-compiler] 4.3.5-4 The GNU C compiler ii gcc-4.4 [c-compiler] 4.4.5-10 The GNU C compiler ii gcc-4.6 [c-compiler] 4.6-20110125-1 The GNU C compiler Versions of packages libc6-dev suggests: ii glibc-doc 2.11.2-10 Embedded GNU C Library: Documentat ii manpages-dev 3.27-1 Manual pages about using GNU/Linux -- no debconf information
--- ./eglibc/libc/bits/byteswap.h.orig 2011-01-31 17:06:19.000000000 +0100 +++ ./eglibc/libc/bits/byteswap.h 2011-01-31 17:06:58.000000000 +0100 @@ -26,7 +26,7 @@ /* Swap bytes in 16 bit value. */ #define __bswap_constant_16(x) \ - ((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8)) + ((unsigned short int)((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8))) #ifdef __GNUC__ # define __bswap_16(x) \