c++language-lawyerc++17noexceptexception-specification

Functions turning noexcept in C++17?


According to this answer, exception specifications will become part of the function type in C++17. Does this mean that exception specifications for many functions will also change, e.g. functions in the C compatibility headers getting noexcept specifications? Which standard functions will have their exception specifications changed to noexcept in C++17?

EDIT: Apparently P0488R0, the 2016-10-19 National Body Comments on the standard working draft, includes proposed changes to mark several C compatibility functions noexcept (see US 172-178). I guess we'll have to wait for a reaction from the WG21 on these.


Solution

  • C++17 change to noexcept is permitting function pointers to have the noexcept type.

    C++17 change to noexcept has nothing to do with what functions in the standard library are marked noexcept.

    Neither depends on the other.

    I am aware of no changes in C++17 to mark every function from the C library noexcept.