diff options
Diffstat (limited to 'bits/byteswap.h')
-rw-r--r-- | bits/byteswap.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/bits/byteswap.h b/bits/byteswap.h index a5dd4a7db3..73189cfe5c 100644 --- a/bits/byteswap.h +++ b/bits/byteswap.h @@ -54,10 +54,11 @@ __bswap32 (unsigned int x) #if defined __GNUC__ && __GNUC__ >= 2 /* Swap bytes in 64 bit value. */ # define __bswap_64(x) \ - ({ union { unsigned long long int __ll; \ - unsigned long int __l[2]; } __v, __r; \ - __v.__ll = (x); \ - __r.__l[0] = __bswap_32 (__v.__l[1]); \ - __r.__l[1] = __bswap_32 (__v.__l[0]); \ - __r.__ll; }) + (__extension__ \ + ({ union { unsigned long long int __ll; \ + unsigned long int __l[2]; } __v, __r; \ + __v.__ll = (x); \ + __r.__l[0] = __bswap_32 (__v.__l[1]); \ + __r.__l[1] = __bswap_32 (__v.__l[0]); \ + __r.__ll; })) #endif |