![]() |
|
Message-ID: <CAN_B+pAkjU-fLpiYVkh8p5VYx_dvaM1JYLCksEUkPGdn9oXt4A@mail.gmail.com> Date: Tue, 24 Jun 2025 17:02:05 +0800 From: Jacob Abrams <satur9nine@...il.com> To: musl@...ts.openwall.com Subject: [PATCH] endian.h: use parentheses to silence warnings It would be nice to silence some warnings that arise from endian.h, for example: musl/include/endian.h:29:25: warning: '&' within '|' [-Wbitwise-op-parentheses] 29 | return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24; | ~ ~~~~~~^~~~~~~ musl/include/endian.h:29:25: note: place parentheses around the '&' expression to silence this warning 29 | return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24; | ^ | ( ) musl/include/endian.h:29:41: warning: '&' within '|' [-Wbitwise-op-parentheses] 29 | return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24; | ~ ~~~~~~^~~~~~~~~ musl/include/endian.h:29:41: note: place parentheses around the '&' expression to silence this warning 29 | return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24; | ^ | ( ) musl/include/endian.h:34:23: warning: operator '<<' has lower precedence than '+'; '+' will be evaluated first [-Wshift-op-parentheses] 34 | return __bswap32(__x)+0ULL<<32 | __bswap32(__x>>32); | ~~~~~~~~~~~~~~^~~~~~~ musl/include/endian.h:34:23: note: place parentheses around the '+' expression to silence this warning 34 | return __bswap32(__x)+0ULL<<32 | __bswap32(__x>>32); | ^ | ( ) Note: I'm not subscribed to the mailing-list, so CCs are appreciated --- include/endian.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/endian.h b/include/endian.h index 172c4320..2819c926 100644 --- a/include/endian.h +++ b/include/endian.h @@ -18,17 +18,17 @@ static __inline uint16_t __bswap16(uint16_t __x) { - return __x<<8 | __x>>8; + return (__x<<8) | (__x>>8); } static __inline uint32_t __bswap32(uint32_t __x) { - return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24; + return (__x>>24) | ((__x>>8)&0xff00) | ((__x<<8)&0xff0000) | (__x<<24); } static __inline uint64_t __bswap64(uint64_t __x) { - return __bswap32(__x)+0ULL<<32 | __bswap32(__x>>32); + return ((__bswap32(__x)+0ULL)<<32) | __bswap32(__x>>32); } #if __BYTE_ORDER == __LITTLE_ENDIAN -- 2.50.0
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.