https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102286
--- Comment #5 from CVS Commits ---
The trunk branch has been updated by Jason Merrill :
https://gcc.gnu.org/g:1d260ab0e39ea63644e3af3ab2e0db946026b5a6
commit r14-4771-g1d260ab0e39ea63644e3af3ab2e0db946026b5a6
Author: Nathaniel Shead
Date:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102286
Artur Bać changed:
What|Removed |Added
CC||gcc at ebasoft dot com.pl
--- Comment #4
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102286
--- Comment #3 from Jonathan Wakely ---
This code from PR 103295 is kinda related, which GCC, EDG and MSVC all accept,
but Clang doesn't:
struct S
{
union {
char buf[8];
char* ptr;
};
unsigned len;
constexpr S(const char* s,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102286
Jonathan Wakely changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
See Also|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102286
--- Comment #2 from Luke Dalessandro ---
Okay, one last simplification for posterity.
constexpr void bar() {
union {
int data[1];
} u;
std::construct_at(u.data, 0);
}
https://godbolt.org/z/r4M3voh6W
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102286
--- Comment #1 from Luke Dalessandro ---
Oops, slightly reduced testcase, don't think the struct is necessary (just part
of my RL code).
union U {
int data[1];
constexpr U() {} // no active member
};
constexpr bool