https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113124
--- Comment #1 from Alexey Dobriyan <adobriyan at gmail dot com> --- This is getting lengthy: Please allow C99 semantics for "simple enough" stuff (read: C structs): * allow reordering * allow duplicating (possibly with warning), * allow holes in the middle of arrays (1- and multi-dimensional). because a) clang++ can do it b) there is not reason no to (for simlpe structs) c) any C to C++ converter can claim that this part of conversion is correct at the moment of gcc/g++ flip without very painful reaudit of all initialisers.