https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121068
--- Comment #2 from Tomasz KamiĆski <tkaminsk at gcc dot gnu.org> --- That is indeed very surprising, as it would mean that if I have: ``` struct S { union { int x; }; }; constexpr S test() { S s; new(&s.x) int; is_active_member(s.x); // this is false } ``` One we have ability to ask for active member, we can observe if new marked it active. However, marking the member as active is also breaking, as following will no longer compiler: ``` constexpr S create() { S s; new(&s.x) int; return s; } constexpr S g = create(); // OK now, x is not active, // ILL-FORMED if new will start lifetime of s.x ``` But I think this should be ILL-FORMED.