https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110810
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
You don't even need it to be a new or even ~X there:
```
struct Foo {
Foo() {}
~Foo() {}
};
struct X {
Foo data[4];
};
template<int>
void f() {
X{};
}
```