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.