From a06c89387621b0a040e6203e7f1a2d8243f5be33 Mon Sep 17 00:00:00 2001 From: Louis Dionne Date: Tue, 28 Jan 2025 16:44:57 -0500 Subject: [PATCH] [libc++abi] Make once_flag constinit in cxa_exception_storage (#124627) This makes it clearer that initialization of this global variable is taking place at compile-time, reducing the likelihood of static initialization order fiasco. --- libcxxabi/src/cxa_exception_storage.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libcxxabi/src/cxa_exception_storage.cpp b/libcxxabi/src/cxa_exception_storage.cpp index 733f0d470569..05da6a48e313 100644 --- a/libcxxabi/src/cxa_exception_storage.cpp +++ b/libcxxabi/src/cxa_exception_storage.cpp @@ -56,7 +56,7 @@ extern "C" { namespace __cxxabiv1 { namespace { std::__libcpp_tls_key key_; - std::__libcpp_exec_once_flag flag_ = _LIBCPP_EXEC_ONCE_INITIALIZER; + constinit std::__libcpp_exec_once_flag flag_ = _LIBCPP_EXEC_ONCE_INITIALIZER; void _LIBCPP_TLS_DESTRUCTOR_CC destruct_(void *p) { __free_with_fallback(p);