The analysis given above is correct.

The following patch fixes the (quite annoying) problem for me:

--- /usr/include/bits/byteswap.h.old    2010-06-26 21:39:16.000000000 +0200
+++ /usr/include/bits/byteswap.h        2010-06-26 21:39:49.000000000 +0200
@@ -29,7 +29,7 @@
 
 /* Swap bytes in 16 bit value.  */
 #define __bswap_constant_16(x) \
-     ((((x) >> 8) & 0xff) | (((x) & 0xff) << 8))
+     ((unsigned short int)((((x) >> 8) & 0xff) | (((x) & 0xff) << 8)))
 
 #if defined __GNUC__ && __GNUC__ >= 2
 # define __bswap_16(x) \




--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/37de9b9102c01d29f0045fb8541af...@localhost

Reply via email to