aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/bits
diff options
context:
space:
mode:
Diffstat (limited to 'libstdc++-v3/include/bits')
-rw-r--r--libstdc++-v3/include/bits/atomic_base.h4
-rw-r--r--libstdc++-v3/include/bits/funcwrap.h6
-rw-r--r--libstdc++-v3/include/bits/version.def17
-rw-r--r--libstdc++-v3/include/bits/version.h20
4 files changed, 43 insertions, 4 deletions
diff --git a/libstdc++-v3/include/bits/atomic_base.h b/libstdc++-v3/include/bits/atomic_base.h
index 7e4ad2b..ccea132 100644
--- a/libstdc++-v3/include/bits/atomic_base.h
+++ b/libstdc++-v3/include/bits/atomic_base.h
@@ -1535,7 +1535,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
static consteval int
- _S_required_aligment()
+ _S_required_alignment()
{
if constexpr (is_floating_point_v<_Vt> || is_pointer_v<_Vt>)
return __alignof__(_Vt);
@@ -1555,7 +1555,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static_assert(is_always_lock_free || !is_volatile_v<_Tp>,
"atomic operations on volatile T must be lock-free");
- static constexpr size_t required_alignment = _S_required_aligment();
+ static constexpr size_t required_alignment = _S_required_alignment();
__atomic_ref_base() = delete;
__atomic_ref_base& operator=(const __atomic_ref_base&) = delete;
diff --git a/libstdc++-v3/include/bits/funcwrap.h b/libstdc++-v3/include/bits/funcwrap.h
index 1a81c9a..67fd591 100644
--- a/libstdc++-v3/include/bits/funcwrap.h
+++ b/libstdc++-v3/include/bits/funcwrap.h
@@ -546,8 +546,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
if constexpr (is_member_object_pointer_v<_Fn>)
{
if constexpr (is_invocable_v<_Fn, _Tr>)
- // TODO Consider reporting issue to make this noexcept
- return static_cast<invoke_result_t<_Fn, _Tr>(*)()>(nullptr);
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 4425. CTAD function_ref from data member pointer should produce
+ // noexcept signature
+ return static_cast<invoke_result_t<_Fn, _Tr>(*)() noexcept>(nullptr);
}
else if constexpr (requires { typename __skip_first_arg<_Fn>::type; })
return static_cast<__skip_first_arg<_Fn>::type*>(nullptr);
diff --git a/libstdc++-v3/include/bits/version.def b/libstdc++-v3/include/bits/version.def
index 1118da4..0423218 100644
--- a/libstdc++-v3/include/bits/version.def
+++ b/libstdc++-v3/include/bits/version.def
@@ -1755,6 +1755,14 @@ ftms = {
};
ftms = {
+ name = ranges_indices;
+ values = {
+ v = 202506;
+ cxxmin = 26;
+ };
+};
+
+ftms = {
name = constexpr_bitset;
values = {
v = 202202;
@@ -1951,6 +1959,15 @@ ftms = {
};
ftms = {
+ name = observable_checkpoint;
+ values = {
+ v = 202506;
+ cxxmin = 26;
+ extra_cond = "__has_builtin(__builtin_observable_checkpoint)";
+ };
+};
+
+ftms = {
name = algorithm_default_value_type;
values = {
v = 202403;
diff --git a/libstdc++-v3/include/bits/version.h b/libstdc++-v3/include/bits/version.h
index c452bbe..df7a291 100644
--- a/libstdc++-v3/include/bits/version.h
+++ b/libstdc++-v3/include/bits/version.h
@@ -1956,6 +1956,16 @@
#endif /* !defined(__cpp_lib_ranges_starts_ends_with) */
#undef __glibcxx_want_ranges_starts_ends_with
+#if !defined(__cpp_lib_ranges_indices)
+# if (__cplusplus > 202302L)
+# define __glibcxx_ranges_indices 202506L
+# if defined(__glibcxx_want_all) || defined(__glibcxx_want_ranges_indices)
+# define __cpp_lib_ranges_indices 202506L
+# endif
+# endif
+#endif /* !defined(__cpp_lib_ranges_indices) */
+#undef __glibcxx_want_ranges_indices
+
#if !defined(__cpp_lib_constexpr_bitset)
# if (__cplusplus >= 202100L) && _GLIBCXX_HOSTED && (__cpp_constexpr_dynamic_alloc)
# define __glibcxx_constexpr_bitset 202202L
@@ -2181,6 +2191,16 @@
#endif /* !defined(__cpp_lib_unreachable) */
#undef __glibcxx_want_unreachable
+#if !defined(__cpp_lib_observable_checkpoint)
+# if (__cplusplus > 202302L) && (__has_builtin(__builtin_observable_checkpoint))
+# define __glibcxx_observable_checkpoint 202506L
+# if defined(__glibcxx_want_all) || defined(__glibcxx_want_observable_checkpoint)
+# define __cpp_lib_observable_checkpoint 202506L
+# endif
+# endif
+#endif /* !defined(__cpp_lib_observable_checkpoint) && defined(__glibcxx_want_observable_checkpoint) */
+#undef __glibcxx_want_observable_checkpoint
+
#if !defined(__cpp_lib_algorithm_default_value_type)
# if (__cplusplus > 202302L)
# define __glibcxx_algorithm_default_value_type 202403L