https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87106
--- Comment #27 from Jonathan Wakely <redi at gcc dot gnu.org> --- > if constexpr (!is_trivial_v<T>) > if (is_default_constructible_v<_Tp> && (__OPTIMIZE__+0)) That would need to be 'if constexpr' I'll stop now.