Skip to content

Commit 1544d1f

Browse files
author
Raul Tambre
committed
[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
1 parent 7306dc9 commit 1544d1f

File tree

6 files changed

+5
-4
lines changed

6 files changed

+5
-4
lines changed

libcxx/docs/ReleaseNotes.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ Implemented Papers
4848
- P0154R1 (Hardware inference size)
4949
- P0618R0 (Deprecating <codecvt>)
5050
- P2418R2 (Add support for ``std::generator``-like types to ``std::format``)
51+
- LWG3659 (Consider ``ATOMIC_FLAG_INIT`` undeprecation)
5152

5253
- Marked the following papers as "Complete" (note that some of those might have
5354
been implemented in a previous release but not marked as such):

libcxx/docs/Status/Cxx20.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@ Paper Status
4646
Not yet implemented LWG-issues will cause API and ABI breakage.
4747
.. [#note-P0966] P0966: It was previously erroneously marked as complete in version 8.0. See `bug 45368 <https://llvm.org/PR45368>`__.
4848
.. [#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.
49-
.. [#note-P0883] P0883: shared_ptr and floating-point changes weren't applied as they themselves aren't implemented yet.
49+
.. [#note-P0883.1] P0883: shared_ptr and floating-point changes weren't applied as they themselves aren't implemented yet.
50+
.. [#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.
5051
.. [#note-P2231] P2231: Optional is complete. The changes to variant haven't been implemented yet.
5152
5253

libcxx/docs/Status/Cxx20Papers.csv

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

libcxx/docs/Status/Cxx2bIssues.csv

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,4 +162,5 @@
162162
"`3645 <https://wg21.link/LWG3645>`__","``resize_and_overwrite`` is overspecified to call its callback with lvalues","Not voted in","|Complete|","14.0",""
163163
"`3656 <https://wg21.link/LWG3656>`__","Inconsistent bit operations returning a count","Not voted in","|Complete|","15.0",""
164164
"`3631 <https://wg21.link/LWG3631>`__","``basic_format_arg(T&&)`` should use ``remove_cvref_t<T>`` throughout","Not voted in","|Complete|","15.0",""
165+
"`3659 <https://wg21.link/LWG3659>`__","Consider ``ATOMIC_FLAG_INIT`` undeprecation","Not voted in","|Complete|","15.0"
165166
"","","","",""

libcxx/include/atomic

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2696,7 +2696,6 @@ typedef atomic<__libcpp_unsigned_lock_free> atomic_unsigned_lock_free;
26962696

26972697
#if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_DISABLE_DEPRECATION_WARNINGS)
26982698
# if defined(_LIBCPP_CLANG_VER) && _LIBCPP_CLANG_VER >= 1400
2699-
# pragma clang deprecated(ATOMIC_FLAG_INIT)
27002699
# pragma clang deprecated(ATOMIC_VAR_INIT)
27012700
# endif
27022701
#endif // _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_DISABLE_DEPRECATION_WARNINGS)

libcxx/test/std/atomics/atomics.flag/init.pass.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
//===----------------------------------------------------------------------===//
88

99
// XFAIL: c++03
10-
// ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
1110

1211
// <atomic>
1312

0 commit comments

Comments
 (0)