https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85717
--- Comment #1 from claudio daffra <daffra.claudio at gmail dot com> --- if swap types, result of compilation changes : union { uint64_t integer ; double real; } ; union { double real; uint64_t integer ; } ; link stack overflow : https://stackoverflow.com/questions/50260850/anonymous-union-in-initializer-list-do-not-handle-the-types-correctly