It's the only manner to actually extract the bits of long double reliably without screwing around with arrays.
If you do that you're already into implementation defined behaviour though, so you might as well typedef your own uint128_t