diff --git a/source/support.tex b/source/support.tex index 735b771d63..54f9e8a89a 100644 --- a/source/support.tex +++ b/source/support.tex @@ -3845,19 +3845,20 @@ terminate_handler set_terminate(terminate_handler f) noexcept; [[noreturn]] void terminate() noexcept; - constexpr int uncaught_exceptions() noexcept; + int uncaught_exceptions() noexcept; using exception_ptr = @\unspec@; - constexpr exception_ptr current_exception() noexcept; + constexpr exception_ptr @\exposid{current-exception}@() noexcept; // \expos + 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 optional 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); + template [[noreturn]] void throw_with_nested(T&& t); + template void rethrow_if_nested(const E& e); } \end{codeblock} @@ -4082,7 +4083,7 @@ \indexlibraryglobal{uncaught_exceptions}% \begin{itemdecl} -constexpr int uncaught_exceptions() noexcept; +int uncaught_exceptions() noexcept; \end{itemdecl} \begin{itemdescr} @@ -4151,7 +4152,8 @@ \indexlibraryglobal{current_exception}% \begin{itemdecl} -constexpr exception_ptr current_exception() noexcept; +constexpr exception_ptr @\exposid{current-exception}@() noexcept; +exception_ptr current_exception() noexcept; \end{itemdecl} \begin{itemdescr} @@ -4221,15 +4223,9 @@ try { throw e; } catch(...) { - return current_exception(); + return @\exposid{current-exception}@(); } \end{codeblock} - -\pnum -\begin{note} -This function is provided for convenience and -efficiency reasons. -\end{note} \end{itemdescr} \indexlibraryglobal{exception_ptr_cast}% @@ -4267,18 +4263,18 @@ namespace std { class nested_exception { public: - constexpr nested_exception() noexcept; - constexpr nested_exception(const nested_exception&) noexcept = default; - constexpr nested_exception& operator=(const nested_exception&) noexcept = default; - constexpr virtual ~nested_exception() = default; + nested_exception() noexcept; + nested_exception(const nested_exception&) noexcept = default; + nested_exception& operator=(const nested_exception&) noexcept = default; + virtual ~nested_exception() = default; // access functions - [[noreturn]] constexpr void rethrow_nested() const; - constexpr exception_ptr nested_ptr() const noexcept; + [[noreturn]] void rethrow_nested() const; + exception_ptr nested_ptr() const noexcept; }; - template [[noreturn]] constexpr void throw_with_nested(T&& t); - template constexpr void rethrow_if_nested(const E& e); + template [[noreturn]] void throw_with_nested(T&& t); + template void rethrow_if_nested(const E& e); } \end{codeblock} @@ -4295,7 +4291,7 @@ \indexlibraryctor{nested_exception}% \begin{itemdecl} -constexpr nested_exception() noexcept; +nested_exception() noexcept; \end{itemdecl} \begin{itemdescr} @@ -4306,7 +4302,7 @@ \indexlibrarymember{rethrow_nested}{nested_exception}% \begin{itemdecl} -[[noreturn]] constexpr void rethrow_nested() const; +[[noreturn]] void rethrow_nested() const; \end{itemdecl} \begin{itemdescr} @@ -4318,7 +4314,7 @@ \indexlibrarymember{nested_ptr}{nested_exception}% \begin{itemdecl} -constexpr exception_ptr nested_ptr() const noexcept; +exception_ptr nested_ptr() const noexcept; \end{itemdecl} \begin{itemdescr} @@ -4329,7 +4325,7 @@ \indexlibrarymember{throw_with_nested}{nested_exception}% \begin{itemdecl} -template [[noreturn]] constexpr void throw_with_nested(T&& t); +template [[noreturn]] void throw_with_nested(T&& t); \end{itemdecl} \begin{itemdescr} @@ -4352,7 +4348,7 @@ \indexlibrarymember{rethrow_if_nested}{nested_exception}% \begin{itemdecl} -template constexpr void rethrow_if_nested(const E& e); +template void rethrow_if_nested(const E& e); \end{itemdecl} \begin{itemdescr}