https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92765
--- Comment #16 from Martin Sebor <msebor at gcc dot gnu.org> --- The warning doesn't affect code generation. It's issued independent of it. We'll have to agree to disagree about the validity of the test case in comment #0, but I do agree that at least some of your test cases unfortunately are valid in C (although I don't think they're also valid in C++ where only the union member that was last written to can be read). I'll look into this when I'm back from PTO in January.