summaryrefslogtreecommitdiff
path: root/TAO/tao/Object.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Object.h')
-rw-r--r--TAO/tao/Object.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/TAO/tao/Object.h b/TAO/tao/Object.h
index 8b401aab505..680428190b5 100644
--- a/TAO/tao/Object.h
+++ b/TAO/tao/Object.h
@@ -30,7 +30,11 @@
#include "tao/Object_Argument_T.h"
#include "tao/Arg_Traits_T.h"
#include "tao/Any_Insert_Policy_T.h"
-#include "ace/Atomic_Op.h"
+#if defined (ACE_HAS_CPP11)
+# include <atomic>
+#else
+# include "ace/Atomic_Op.h"
+#endif /* ACE_HAS_CPP11 */
#if defined (HPUX) && defined (IOR)
/* HP-UX 11.11 defines IOR in /usr/include/pa/inline.h
@@ -340,7 +344,11 @@ namespace CORBA
TAO::Object_Proxy_Broker *proxy_broker () const;
/// Number of outstanding references to this object.
+#if defined (ACE_HAS_CPP11)
+ std::atomic<uint32_t> refcount_;
+#else
ACE_Atomic_Op<TAO_SYNCH_MUTEX, unsigned long> refcount_;
+#endif /* ACE_HAS_CPP11 */
private: