#define HTON_I32(x) htonl(x)
inline float __HTON_F32(float x)
{
int i = HTON_I32(*((int *)(&x)));
return (*((float *)(&i)));
}
cómo resolver advertencia dereferencing type-punned pointer will break strict-aliasing rules
en el código anteriorde cómo resolver la advertencia: puntero de tipo hizo juegos de palabras desreferenciar va a romper las reglas estrictas-aliasing
Usted puede compilar con la -fno-estricta -aliasing bandera en. Esto eliminará las advertencias sobre problemas de aliasing estrictos –
@TonyTheLion: eso no resuelve el problema, lo oculta y oculta otros posibles problemas en el código. No es Buena idea. – Mat
@Mat, no, esto resuelve el problema con un costo de optimización. –