]> git.ipfire.org Git - thirdparty/gcc.git/commit
libstdc++: Add noexcept-specifier to std::reference_wrapper::operator()
authorJonathan Wakely <jwakely@redhat.com>
Wed, 31 Aug 2022 12:57:34 +0000 (13:57 +0100)
committerJonathan Wakely <jwakely@redhat.com>
Tue, 21 Feb 2023 00:48:05 +0000 (00:48 +0000)
commit5e8ff1c84b1599c747cd161d5370235791242bf3
tree8f810de785ae3b50dd17940ca747721d96702e49
parent0a2597477e482df4d67db6696431286df1ff4428
libstdc++: Add noexcept-specifier to std::reference_wrapper::operator()

This isn't required by the standard, but there's an LWG issue suggesting
to add it.

Also use __invoke_result instead of result_of, to match the spec in
recent standards.

libstdc++-v3/ChangeLog:

* include/bits/refwrap.h (reference_wrapper::operator()): Add
noexcept-specifier and use __invoke_result instead of result_of.
* testsuite/20_util/reference_wrapper/invoke-noexcept.cc: New test.

(cherry picked from commit e47df5eb56c4e7aca0d3e50826e5aaa1887fa446)
libstdc++-v3/include/bits/refwrap.h
libstdc++-v3/testsuite/20_util/reference_wrapper/invoke-noexcept.cc [new file with mode: 0644]