From ec58a5893a7be26339eda352b8888141db8db5d8 Mon Sep 17 00:00:00 2001 From: Andrey Semashev Date: Sat, 22 Dec 2012 15:09:01 +0000 Subject: [PATCH] Added missing atomic typedefs. [SVN r82168] --- include/boost/atomic/atomic.hpp | 39 +++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/include/boost/atomic/atomic.hpp b/include/boost/atomic/atomic.hpp index a07645e..b7c2492 100644 --- a/include/boost/atomic/atomic.hpp +++ b/include/boost/atomic/atomic.hpp @@ -132,6 +132,45 @@ typedef atomic atomic_char16_t; typedef atomic atomic_char32_t; #endif +typedef atomic atomic_int_least8_t; +typedef atomic atomic_uint_least8_t; +typedef atomic atomic_int_least16_t; +typedef atomic atomic_uint_least16_t; +typedef atomic atomic_int_least32_t; +typedef atomic atomic_uint_least32_t; +typedef atomic atomic_int_least64_t; +typedef atomic atomic_uint_least64_t; +typedef atomic atomic_int_fast8_t; +typedef atomic atomic_uint_fast8_t; +typedef atomic atomic_int_fast16_t; +typedef atomic atomic_uint_fast16_t; +typedef atomic atomic_int_fast32_t; +typedef atomic atomic_uint_fast32_t; +typedef atomic atomic_int_fast64_t; +typedef atomic atomic_uint_fast64_t; +typedef atomic atomic_intmax_t; +typedef atomic atomic_uintmax_t; + +typedef atomic atomic_size_t; +typedef atomic atomic_ptrdiff_t; + +#if defined(BOOST_WINDOWS) \ + || (defined(_XOPEN_UNIX) && (_XOPEN_UNIX+0 > 0)) \ + || defined(__CYGWIN__) \ + || defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__) \ + || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) +typedef atomic atomic_intptr_t; +typedef atomic atomic_uintptr_t; +#elif defined(__GNUC__) || defined(__clang__) +#if defined(__INTPTR_TYPE__) +typedef atomic< __INTPTR_TYPE__ > atomic_intptr_t; +#endif +#if defined(__UINTPTR_TYPE__) +typedef atomic< __UINTPTR_TYPE__ > atomic_uintptr_t; +#endif +#endif + + #ifndef BOOST_ATOMIC_FLAG_LOCK_FREE #define BOOST_ATOMIC_FLAG_LOCK_FREE 0 class atomic_flag