diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2022-09-28 12:39:41 +0100 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2022-09-29 00:33:46 +0100 |
commit | d01f112de4a54db6d2abef836e6dff3a08167389 (patch) | |
tree | 5a8668807517fa6ecb79e7c9d68bc53c18863d6c /libcpp | |
parent | fa9bda3ea4315a7285edbc99323e3fa7885cbbb8 (diff) | |
download | gcc-d01f112de4a54db6d2abef836e6dff3a08167389.zip gcc-d01f112de4a54db6d2abef836e6dff3a08167389.tar.gz gcc-d01f112de4a54db6d2abef836e6dff3a08167389.tar.bz2 |
libstdc++: Disable volatile-qualified std::bind for C++20
LWG 2487 added a precondition to std::bind for C++17, making
volatile-qualified uses undefined. We still support it, but with a
deprecated warning.
P1065R2 made it explicitly ill-formed for C++20, so we should no longer
accept it as deprecated. This implements that change.
libstdc++-v3/ChangeLog:
* doc/xml/manual/evolution.xml: Document std::bind API
changes.
* doc/xml/manual/intro.xml: Document LWG 2487 status.
* doc/xml/manual/using.xml: Clarify default value of
_GLIBCXX_USE_DEPRECATED.
* doc/html/*: Regenerate.
* include/std/functional (_Bind::operator()(Args&&...) volatile)
(_Bind::operator()(Args&&...) const volatile)
(_Bind_result::operator()(Args&&...) volatile)
(_Bind_result::operator()(Args&&...) const volatile): Replace
with deleted overload for C++20 and later.
* testsuite/20_util/bind/cv_quals.cc: Check for deprecated
warnings in C++17.
* testsuite/20_util/bind/cv_quals_2.cc: Likewise, and check for
ill-formed in C++20.
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions