summaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2022-05-19 12:54:41 +0100
committerJonathan Wakely <jwakely@redhat.com>2022-06-08 10:52:16 +0100
commit64f5d58d8151324be111ba6e13c50b4b642c41c2 (patch)
tree1db223e52c8017d6c7654ff3e976011a152cac42 /libstdc++-v3
parentc45a9752f15bbc37d8efda0e29af5a2bfd53729d (diff)
libstdc++: Only include <ext/atomicity.h> for COW string
Since the COW std::string was moved to its own header, we don't need the atomic dispatch helpers in the definition of std::__cxx11::string. Move the inclusion of the <ext/atomicity.h> header to <bits/cow_string.h> where it's needed. libstdc++-v3/ChangeLog: * include/bits/basic_string.h: Do not include <ext/atomicity.h> here. * include/bits/cow_string.h: Include it here. (cherry picked from commit f3e22baec0290c23654e99bf184153765944f4aa)
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/include/bits/basic_string.h1
-rw-r--r--libstdc++-v3/include/bits/cow_string.h2
2 files changed, 2 insertions, 1 deletions
diff --git a/libstdc++-v3/include/bits/basic_string.h b/libstdc++-v3/include/bits/basic_string.h
index c3fbc53953c..6041d05815b 100644
--- a/libstdc++-v3/include/bits/basic_string.h
+++ b/libstdc++-v3/include/bits/basic_string.h
@@ -36,7 +36,6 @@
#pragma GCC system_header
-#include <ext/atomicity.h>
#include <ext/alloc_traits.h>
#include <debug/debug.h>
diff --git a/libstdc++-v3/include/bits/cow_string.h b/libstdc++-v3/include/bits/cow_string.h
index a49a5b04f2f..7bceb06a79b 100644
--- a/libstdc++-v3/include/bits/cow_string.h
+++ b/libstdc++-v3/include/bits/cow_string.h
@@ -34,6 +34,8 @@
#if ! _GLIBCXX_USE_CXX11_ABI
+#include <ext/atomicity.h> // _Atomic_word, __is_single_threaded
+
#ifdef __cpp_lib_is_constant_evaluated
// Support P1032R1 in C++20 (but not P0980R1 for COW strings).
# define __cpp_lib_constexpr_string 201811L