From eaaddb0d0bb28ebd6fd91ab0fe7bcbe2c6e9fd4b Mon Sep 17 00:00:00 2001 From: q66 Date: Fri, 22 Jan 2016 18:10:13 +0000 Subject: [PATCH] redefine some stuff without macros --- ostd/atomic.hh | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/ostd/atomic.hh b/ostd/atomic.hh index c159a68..2169961 100644 --- a/ostd/atomic.hh +++ b/ostd/atomic.hh @@ -77,16 +77,16 @@ namespace detail { #ifdef __GNUC__ -#define ATOMIC_BOOL_LOCK_FREE __GCC_ATOMIC_BOOL_LOCK_FREE -#define ATOMIC_CHAR_LOCK_FREE __GCC_ATOMIC_CHAR_LOCK_FREE -#define ATOMIC_CHAR16_T_LOCK_FREE __GCC_ATOMIC_CHAR16_T_LOCK_FREE -#define ATOMIC_CHAR32_T_LOCK_FREE __GCC_ATOMIC_CHAR32_T_LOCK_FREE -#define ATOMIC_WCHART_LOCK_FREE __GCC_ATOMIC_WCHART_LOCK_FREE -#define ATOMIC_SHORT_LOCK_FREE __GCC_ATOMIC_SHORT_LOCK_FREE -#define ATOMIC_INT_LOCK_FREE __GCC_ATOMIC_INT_LOCK_FREE -#define ATOMIC_LONG_LOCK_FREE __GCC_ATOMIC_LONG_LOCK_FREE -#define ATOMIC_LLONG_LOCK_FREE __GCC_ATOMIC_LLONG_LOCK_FREE -#define ATOMIC_POINTER_LOCK_FREE __GCC_ATOMIC_POINTER_LOCK_FREE +static constexpr Size AtomicBoolLockFree = __GCC_ATOMIC_BOOL_LOCK_FREE; +static constexpr Size AtomicCharLockFree = __GCC_ATOMIC_CHAR_LOCK_FREE; +static constexpr Size AtomicChar16LockFree = __GCC_ATOMIC_CHAR16_T_LOCK_FREE; +static constexpr Size AtomicChar32LockFree = __GCC_ATOMIC_CHAR32_T_LOCK_FREE; +static constexpr Size AtomicWcharLockFree = __GCC_ATOMIC_WCHAR_T_LOCK_FREE; +static constexpr Size AtomicShortLockFree = __GCC_ATOMIC_SHORT_LOCK_FREE; +static constexpr Size AtomicIntLockFree = __GCC_ATOMIC_INT_LOCK_FREE; +static constexpr Size AtomicLongLockFree = __GCC_ATOMIC_LONG_LOCK_FREE; +static constexpr Size AtomicLlongLockFree = __GCC_ATOMIC_LLONG_LOCK_FREE; +static constexpr Size AtomicPointerLockFree = __GCC_ATOMIC_POINTER_LOCK_FREE; namespace detail { static inline constexpr int to_gcc_order(MemoryOrder ord) {