https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79671
--- Comment #72 from Jason Merrill <jason at gcc dot gnu.org> --- (In reply to rguent...@suse.de from comment #69) > As I noted elsewhere union members in C++ seem to be pure convenience and a > union contains implicit members of all types (well, somehow factor in > alignment). Of course Jason argues char[] is special and introduces this > but I can't find text anywhere to support that or require char[] and not, > say int[]. This is clarified somewhat in C++17, by http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0137r1.html Note that this wording makes only unsigned char[] special, not signed or plain char[].