diff options
Diffstat (limited to 'libstdc++-v3/include/std/atomic')
-rw-r--r-- | libstdc++-v3/include/std/atomic | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libstdc++-v3/include/std/atomic b/libstdc++-v3/include/std/atomic index 356f145..857f927 100644 --- a/libstdc++-v3/include/std/atomic +++ b/libstdc++-v3/include/std/atomic @@ -1727,6 +1727,23 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION using __atomic_ref<_Tp>::operator=; }; +#define __cpp_lib_atomic_lock_free_type_aliases 201907L +#ifdef _GLIBCXX_HAVE_PLATFORM_WAIT + using atomic_signed_lock_free + = atomic<make_signed_t<__detail::__platform_wait_t>>; + using atomic_unsigned_lock_free + = atomic<make_unsigned_t<__detail::__platform_wait_t>>; +#elif ATOMIC_INT_LOCK_FREE || !(ATOMIC_LONG_LOCK_FREE || ATOMIC_CHAR_LOCK_FREE) + using atomic_signed_lock_free = atomic<signed int>; + using atomic_unsigned_lock_free = atomic<unsigned int>; +#elif ATOMIC_LONG_LOCK_FREE + using atomic_signed_lock_free = atomic<signed long>; + using atomic_unsigned_lock_free = atomic<unsigned long>; +#elif ATOMIC_CHAR_LOCK_FREE + using atomic_signed_lock_free = atomic<signed char>; + using atomic_unsigned_lock_free = atomic<unsigned char>; +#endif + #endif // C++2a /// @} group atomics |