summaryrefslogtreecommitdiff
path: root/ace/Event_Handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Event_Handler.cpp')
-rw-r--r--ace/Event_Handler.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/ace/Event_Handler.cpp b/ace/Event_Handler.cpp
index 10a2a472ed7..de0a347bdc1 100644
--- a/ace/Event_Handler.cpp
+++ b/ace/Event_Handler.cpp
@@ -6,6 +6,8 @@
#include "ace/OS_Errno.h"
#include "ace/Reactor.h"
#include "ace/Thread_Manager.h"
+/* Need to see if ACE_HAS_BUILTIN_ATOMIC_OP defined */
+#include "ace/Atomic_Op.h"
#if !defined (__ACE_INLINE__)
#include "ace/Event_Handler.inl"
@@ -407,4 +409,16 @@ ACE_Notification_Buffer::ACE_Notification_Buffer (ACE_Event_Handler *eh,
ACE_TRACE ("ACE_Notification_Buffer::ACE_Notification_Buffer");
}
+// ACE_HAS_BUILTIN_ATOMIC_OP triggers specialization of these, so the
+// instantiations aren't needed here.
+#if !defined (ACE_HAS_BUILTIN_ATOMIC_OP)
+# if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
+template class ACE_Atomic_Op<ACE_SYNCH_MUTEX, long>;
+template class ACE_Atomic_Op_Ex<ACE_SYNCH_MUTEX, long>;
+# elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
+# pragma instantiate ACE_Atomic_Op<ACE_SYNCH_MUTEX, long>
+# pragma instantiate ACE_Atomic_Op_Ex<ACE_SYNCH_MUTEX, long>
+# endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+#endif /* ACE_HAS_BUILTIN_ATOMIC_OP */
+
ACE_END_VERSIONED_NAMESPACE_DECL