dynamic exception specification - the classic approach to exception specification using throw on a function declaration to list all of the exception types that might be thrown by a function. Supplanted by noexcept (see Section 3.1.“noexcept Specifier” on page 1085), this feature was deprecated in C++11, removed except for throw() as an equivalent of noexcept in C++17, and removed completely in C++20. noexcept Operator (618), noexcept Specifier (1085)” (EMCppSfe 2021)