@shafik @regehr I think the main reason it is like this is that there is no easy and concise way to do type punning like this in C. In C++ we have std::bit_cast now, which works (as long as your floats are IEEE754), but in C the alternative is uglier (either unions or manual memcpy, though I don't know if the union trick is even legal).
@thephd can we please have _Bit_cast() in C26/C29? This would solve so many things.