Affected subclause: [except.spec]
Change: Remove dynamic exception specifications
. Rationale: Dynamic exception specifications were a deprecated feature
that was complex and brittle in use
. They interacted badly with the type system,
which became a more significant issue in this revision of C++
where (non-dynamic) exception specifications are part of the function type
. Effect on original feature: A valid C++ 2014 function declaration,
member function declaration,
function pointer declaration,
or function reference declaration,
if it has a potentially throwing dynamic exception specification,
is rejected as ill-formed in this revision of C++
. Violating a non-throwing dynamic exception specification
calls
terminate rather than
unexpected,
and it is unspecified whether stack unwinding is performed
prior to such a call
.