File tree Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Original file line number Diff line number Diff line change @@ -25,10 +25,11 @@ struct __libcpp_is_always_lock_free {
2525
2626#ifdef __CHERI_PURE_CAPABILITY__
2727// FIXME: can be removed after https://github.com/CTSRD-CHERI/llvm-project/pull/721 lands
28+ #include < __atomic/atomic_lock_free.h>
2829template <typename _Tp> struct __libcpp_is_always_lock_free <_Tp*> { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
29- template <> struct __libcpp_is_always_lock_free <intptr_t > { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
30- template <> struct __libcpp_is_always_lock_free <uintptr_t > { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
31- template <> struct __libcpp_is_always_lock_free <std:: nullptr_t > { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
30+ template <> struct __libcpp_is_always_lock_free <__INTPTR_TYPE__ > { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
31+ template <> struct __libcpp_is_always_lock_free <__UINTPTR_TYPE__ > { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
32+ template <> struct __libcpp_is_always_lock_free <decltype ( nullptr ) > { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; };
3233#endif
3334
3435_LIBCPP_END_NAMESPACE_STD
You can’t perform that action at this time.
0 commit comments