https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115219
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Barnabás Pőcze from comment #3) > That reduced test case compiles fine for me. On CE, too. Am I missing some > compilation flags? Oh I reduced it with an older version but newer versions (GCC 13+) don't ICE there. Anyways here is new reduced testcase: ``` using t = decltype(sizeof(0)); template <typename _Tp> constexpr bool is_nothrow_destructible_v = false; template<typename T> struct B { static void * operator new(t s, t); static void operator delete(void *) noexcept(is_nothrow_destructible_v<T>) ; }; void test() { new (42) B<int>(); } ``` The only difference between this one and the previous one is that noexcept is is_nothrow_destructible_v<T> vs is_nothrow_destructible_v<int>. Meaning it is dependent in the new version while in the old one is not; it seems like GCC 13+ can handle non-dependent values there.