Re: [PATCH v8 01/12] bswap: add 64 bit endianness helper get_be64
Ben Peart <Ben.Peart@microsoft.com> writes:
Show 11 quoted lines
>> @@ -183,8 +183,8 @@ static inline uint32_t get_be32(const void *ptr) static
>> inline uint64_t get_be64(const void *ptr) {
>> const unsigned char *p = ptr;
>> - return (uint64_t)get_be32(p[0]) << 32 |
>> - (uint64_t)get_be32(p[4]) << 0;
>> + return (uint64_t)get_be32(p + 0) << 32 |
>> + (uint64_t)get_be32(p + 4) << 0;
>
> This is surprising. Every other function in the file uses the p[x] syntax. Just for
> consistency, is there a way to stick to that syntax but still make it work correctly?
> Is there a typecast that can make it work?I'll do "get_be32(&p[0])" etc. while queueing for now.
Thanks, both of you.