[libcxx-commits] [libcxx] [libc++] Replace mutex+condvar with atomics in __call_once (PR #192433)

Nikolas Klauser via libcxx-commits libcxx-commits at lists.llvm.org
Thu Apr 16 11:02:29 PDT 2026


================
@@ -25,8 +27,9 @@ _LIBCPP_BEGIN_NAMESPACE_STD
 // keep in sync with:  7741191.
 
 #if _LIBCPP_HAS_THREADS
-static constinit __libcpp_mutex_t mut  = _LIBCPP_MUTEX_INITIALIZER;
-static constinit __libcpp_condvar_t cv = _LIBCPP_CONDVAR_INITIALIZER;
+_LIBCPP_EXPORTED_FROM_ABI void __cxx_atomic_notify_all(void const volatile*) _NOEXCEPT;
----------------
philnik777 wrote:

This looks wrong. You don't want to export these functions, and I actually don't know why these declarations exist at all.

https://github.com/llvm/llvm-project/pull/192433


More information about the libcxx-commits mailing list