Even though they have the same size, and typically the same alignment,
uint32_t and float are under no circumstances compatible types in C.
The casts from float * to uint32_t * are invalid here. Insofar as the
resulting pointers are dereferenced, this is undefined behaviour.
This patch uses
r...@remlab.net:
> From: Rémi Denis-Courmont
>
> Even though they have the same size, and typically the same alignment,
> uint32_t and float are under no circumstances compatible types in C.
>
> The casts from float * to uint32_t * are invalid here. Insofar as the
> resulting pointers are
From: Rémi Denis-Courmont
Even though they have the same size, and typically the same alignment,
uint32_t and float are under no circumstances compatible types in C.
The casts from float * to uint32_t * are invalid here. Insofar as the
resulting pointers are dereferenced, this is undefined