Index: include/functional =================================================================== --- include/functional +++ include/functional @@ -1766,7 +1766,11 @@ if (__function::__not_null(__f)) { _FunAlloc __af(__a); - if (sizeof(_Fun) <= sizeof(__buf_) && + if +#ifdef __cpp_if_constexpr + constexpr +#endif + (sizeof(_Fun) <= sizeof(__buf_) && is_nothrow_copy_constructible<_Fp>::value && is_nothrow_copy_constructible<_FunAlloc>::value) {