https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110493
--- Comment #4 from Ed Catmur <ed at catmur dot uk> --- Ah, thanks. So a workaround is something like: void f() { static auto a = {((bool*)&(int const&)0, std::string())}; } That's not too bad, then.