[libc++] Undeprecate ATOMIC_FLAG_INIT (LWG3659)

According to @aaron.ballman this was marked Tentatively Ready as of 2022-07-07.
D129362 implemented the C counterpart.

Reviewed By: ldionne, #libc, Mordante

Differential Revision: https://reviews.llvm.org/D129380
This commit is contained in:
Raul Tambre 2022-07-08 19:38:22 +03:00
parent 7306dc91e0
commit 1544d1f9fd
6 changed files with 5 additions and 4 deletions

View File

@ -48,6 +48,7 @@ Implemented Papers
- P0154R1 (Hardware inference size) - P0154R1 (Hardware inference size)
- P0618R0 (Deprecating <codecvt>) - P0618R0 (Deprecating <codecvt>)
- P2418R2 (Add support for ``std::generator``-like types to ``std::format``) - P2418R2 (Add support for ``std::generator``-like types to ``std::format``)
- LWG3659 (Consider ``ATOMIC_FLAG_INIT`` undeprecation)
- Marked the following papers as "Complete" (note that some of those might have - Marked the following papers as "Complete" (note that some of those might have
been implemented in a previous release but not marked as such): been implemented in a previous release but not marked as such):

View File

@ -46,7 +46,8 @@ Paper Status
Not yet implemented LWG-issues will cause API and ABI breakage. Not yet implemented LWG-issues will cause API and ABI breakage.
.. [#note-P0966] P0966: It was previously erroneously marked as complete in version 8.0. See `bug 45368 <https://llvm.org/PR45368>`__. .. [#note-P0966] P0966: It was previously erroneously marked as complete in version 8.0. See `bug 45368 <https://llvm.org/PR45368>`__.
.. [#note-P0619] P0619: Only sections D.8, D.9, D.10 and D.13 are implemented. Sections D.4, D.7, D.11, D.12, and D.14 remain undone. .. [#note-P0619] P0619: Only sections D.8, D.9, D.10 and D.13 are implemented. Sections D.4, D.7, D.11, D.12, and D.14 remain undone.
.. [#note-P0883] P0883: shared_ptr and floating-point changes weren't applied as they themselves aren't implemented yet. .. [#note-P0883.1] P0883: shared_ptr and floating-point changes weren't applied as they themselves aren't implemented yet.
.. [#note-P0883.2] P0883: ``ATOMIC_FLAG_INIT`` was marked deprecated in version 14.0, but was undeprecated with the implementation of LWG3659 in version 15.0.
.. [#note-P2231] P2231: Optional is complete. The changes to variant haven't been implemented yet. .. [#note-P2231] P2231: Optional is complete. The changes to variant haven't been implemented yet.

View File

@ -133,7 +133,7 @@
"`P1661R1 <https://wg21.link/P1661R1>`__","LWG","Remove dedicated precalculated hash lookup interface","Cologne","|Nothing To Do|","" "`P1661R1 <https://wg21.link/P1661R1>`__","LWG","Remove dedicated precalculated hash lookup interface","Cologne","|Nothing To Do|",""
"`P1754R1 <https://wg21.link/P1754R1>`__","LWG","Rename concepts to standard_case for C++20, while we still can","Cologne","|In Progress|","" "`P1754R1 <https://wg21.link/P1754R1>`__","LWG","Rename concepts to standard_case for C++20, while we still can","Cologne","|In Progress|",""
"","","","","","" "","","","","",""
"`P0883R2 <https://wg21.link/P0883R2>`__","LWG","Fixing Atomic Initialization","Belfast","|Complete| [#note-P0883]_","14.0" "`P0883R2 <https://wg21.link/P0883R2>`__","LWG","Fixing Atomic Initialization","Belfast","|Complete| [#note-P0883.1]_ [#note-P0883.2]_","14.0"
"`P1391R4 <https://wg21.link/P1391R4>`__","LWG","Range constructor for std::string_view","Belfast","|Complete|","14.0" "`P1391R4 <https://wg21.link/P1391R4>`__","LWG","Range constructor for std::string_view","Belfast","|Complete|","14.0"
"`P1394R4 <https://wg21.link/P1394R4>`__","LWG","Range constructor for std::span","Belfast","|Complete|","14.0" "`P1394R4 <https://wg21.link/P1394R4>`__","LWG","Range constructor for std::span","Belfast","|Complete|","14.0"
"`P1456R1 <https://wg21.link/P1456R1>`__","LWG","Move-only views","Belfast","|Complete|","15.0" "`P1456R1 <https://wg21.link/P1456R1>`__","LWG","Move-only views","Belfast","|Complete|","15.0"

1 Paper # Group Paper Name Meeting Status First released version
133 `P1661R1 <https://wg21.link/P1661R1>`__ LWG Remove dedicated precalculated hash lookup interface Cologne |Nothing To Do|
134 `P1754R1 <https://wg21.link/P1754R1>`__ LWG Rename concepts to standard_case for C++20, while we still can Cologne |In Progress|
135
136 `P0883R2 <https://wg21.link/P0883R2>`__ LWG Fixing Atomic Initialization Belfast |Complete| [#note-P0883]_ |Complete| [#note-P0883.1]_ [#note-P0883.2]_ 14.0
137 `P1391R4 <https://wg21.link/P1391R4>`__ LWG Range constructor for std::string_view Belfast |Complete| 14.0
138 `P1394R4 <https://wg21.link/P1394R4>`__ LWG Range constructor for std::span Belfast |Complete| 14.0
139 `P1456R1 <https://wg21.link/P1456R1>`__ LWG Move-only views Belfast |Complete| 15.0

View File

@ -162,4 +162,5 @@
"`3645 <https://wg21.link/LWG3645>`__","``resize_and_overwrite`` is overspecified to call its callback with lvalues","Not voted in","|Complete|","14.0","" "`3645 <https://wg21.link/LWG3645>`__","``resize_and_overwrite`` is overspecified to call its callback with lvalues","Not voted in","|Complete|","14.0",""
"`3656 <https://wg21.link/LWG3656>`__","Inconsistent bit operations returning a count","Not voted in","|Complete|","15.0","" "`3656 <https://wg21.link/LWG3656>`__","Inconsistent bit operations returning a count","Not voted in","|Complete|","15.0",""
"`3631 <https://wg21.link/LWG3631>`__","``basic_format_arg(T&&)`` should use ``remove_cvref_t<T>`` throughout","Not voted in","|Complete|","15.0","" "`3631 <https://wg21.link/LWG3631>`__","``basic_format_arg(T&&)`` should use ``remove_cvref_t<T>`` throughout","Not voted in","|Complete|","15.0",""
"`3659 <https://wg21.link/LWG3659>`__","Consider ``ATOMIC_FLAG_INIT`` undeprecation","Not voted in","|Complete|","15.0"
"","","","","" "","","","",""

Can't render this file because it has a wrong number of fields in line 2.

View File

@ -2696,7 +2696,6 @@ typedef atomic<__libcpp_unsigned_lock_free> atomic_unsigned_lock_free;
#if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_DISABLE_DEPRECATION_WARNINGS) #if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_DISABLE_DEPRECATION_WARNINGS)
# if defined(_LIBCPP_CLANG_VER) && _LIBCPP_CLANG_VER >= 1400 # if defined(_LIBCPP_CLANG_VER) && _LIBCPP_CLANG_VER >= 1400
# pragma clang deprecated(ATOMIC_FLAG_INIT)
# pragma clang deprecated(ATOMIC_VAR_INIT) # pragma clang deprecated(ATOMIC_VAR_INIT)
# endif # endif
#endif // _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_DISABLE_DEPRECATION_WARNINGS) #endif // _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_DISABLE_DEPRECATION_WARNINGS)

View File

@ -7,7 +7,6 @@
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
// XFAIL: c++03 // XFAIL: c++03
// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
// <atomic> // <atomic>