[exception.syn] # 17 Language support library [[support]](./#support) ## 17.9 Exception handling [[support.exception]](support.exception#exception.syn) ### 17.9.2 Header synopsis [exception.syn] // all freestandingnamespace std {class exception; class bad_exception; class nested_exception; using terminate_handler = void (*)(); terminate_handler get_terminate() noexcept; terminate_handler set_terminate(terminate_handler f) noexcept; [[noreturn]] void terminate() noexcept; constexpr int uncaught_exceptions() noexcept; using exception_ptr = *unspecified*; constexpr exception_ptr current_exception() noexcept; [[noreturn]] constexpr void rethrow_exception(exception_ptr p); template constexpr exception_ptr make_exception_ptr(E e) noexcept; template constexpr const E* exception_ptr_cast(const exception_ptr& p) noexcept; template void exception_ptr_cast(const exception_ptr&&) = delete; template [[noreturn]] constexpr void throw_with_nested(T&& t); template constexpr void rethrow_if_nested(const E& e);}