summaryrefslogtreecommitdiff
path: root/boost/smart_ptr/detail/sp_has_sync.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/smart_ptr/detail/sp_has_sync.hpp')
-rw-r--r--boost/smart_ptr/detail/sp_has_sync.hpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/boost/smart_ptr/detail/sp_has_sync.hpp b/boost/smart_ptr/detail/sp_has_sync.hpp
index 16de21d379..e1debf0cc9 100644
--- a/boost/smart_ptr/detail/sp_has_sync.hpp
+++ b/boost/smart_ptr/detail/sp_has_sync.hpp
@@ -22,15 +22,15 @@
#ifndef BOOST_SP_NO_SYNC
-#if defined( __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 )
+#if !defined( __c2__ ) && defined( __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 )
# define BOOST_SP_HAS_SYNC
-#elif defined( __IBMCPP__ ) && ( __IBMCPP__ >= 1210 )
+#elif defined( __IBMCPP__ ) && ( __IBMCPP__ >= 1210 ) && !defined( __COMPILER_VER__ )
# define BOOST_SP_HAS_SYNC
-#elif defined( __GNUC__ ) && ( __GNUC__ * 100 + __GNUC_MINOR__ >= 401 )
+#elif !defined( __c2__ ) && defined( __GNUC__ ) && ( __GNUC__ * 100 + __GNUC_MINOR__ >= 401 )
#define BOOST_SP_HAS_SYNC