This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Define std::not_fn for C++17
- From: Jonathan Wakely <jwakely at redhat dot com>
- To: libstdc++ at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Fri, 19 Aug 2016 17:00:05 +0100
- Subject: Re: [PATCH] Define std::not_fn for C++17
- Authentication-results: sourceware.org; auth=none
- References: <20160819154607.GA32676@redhat.com>
On 19/08/16 16:46 +0100, Jonathan Wakely wrote:
This updates std::experimental::not_fn to match the C++17 semantics
(which are a superset of the Library Fundamentals v2 semantics) and
then copies it to std::not_fn as well.
* doc/xml/manual/status_cxx2017.xml: Update status of not_fn.
Oops, the "fixes for not_fn" row in the table should be shown as done
too.
* doc/html/*: Regenerate.
* include/experimental/functional (_Not_fn, not_fn): Match C++17
semantics.
* include/std/functional (_Not_fn, not_fn): Define for C++17.
* testsuite/20_util/not_fn/1.cc: New.
* testsuite/experimental/functional/not_fn.cc: Test abstract class.
Remove test for volatile-qualified wrapper.
Tested x86_64-linux, committed to trunk.
I wonder if we want to move the experimental::_Not_fn class into
<functional> and have std::not_fn and std::experimental::not_fn return
exactly the same type.