https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121068
--- Comment #6 from Tomasz KamiĆski <tkaminsk at gcc dot gnu.org> --- I believed that `_member` being active after new should directly fall from the definition of active member in https://eel.is/c++draft/class.union#general-2: > In a union, a non-static data member is active if its name refers to an > object whose lifetime has begun and has not ended ([basic.life]). So if new operations, starts lifetime of member of the union (regardless of how) it becomes active member of the union, until it's lifetime is ended. I do not think that syntax how does it happen matters. The unclear case, would be if creating element of array member, should start the union, i.e. something like: new (&union_.member[2]) T;
