https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102567

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |INVALID
             Status|UNCONFIRMED                 |RESOLVED

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
This is not a libstdc++ bug, we implement what the standard says.

Maybe it used to compile, but it was meaningless. You could say it was a
function of void() noexcept, but you could still store a target function that
throwed, and its operator() could still throw.

Both std::move_only_function (P0288) and std::function_ref (P0792) support
using a function type that is optionally const-qualified and optionally
noexcept, and it actually means something (it affects what you can store in
there, and whether they can modify a stateful target object, and whether their
operator() is noexcept or not). std::function is not going to get updated
though.

Reply via email to