I feel so terribly rusty, having to ask all these questions ...
const size_t Limit = 16;
template <typename T>
void foo() noexcept(sizeof(T) < Limit);
template <typename U>
void foo() noexcept(Limit > sizeof(U));
How are such declarations merged? Do we simply not check dependent noexcept specifiers and hope for the best? Is there some existing functionality in place for revalidating things like these on instantiation? Should I put such functionality in place?