https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95976
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |wrong-code Version|unknown |10.1.0 Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- This changed behavior twice, first one with r9-3261-gbedf03a298f87b43f02eaee57542fbd10228ec08 with which the union size became 0 rather than the expected 1, and then in r9-5710-g7e574f68fa82e7c5f879fd468291ec8b5ebecc83 which made the union size 2 instead (also incorrect). From what I can see in the standard, [[no_unique_address]] is allowed on union members and those members are potentially-overlapping subobjects, but the union description makes it clear that all those members start at offset 0.