diff options
Diffstat (limited to 'TAO/tests/POA/Loader/Servant_Activator.cpp')
-rw-r--r-- | TAO/tests/POA/Loader/Servant_Activator.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/TAO/tests/POA/Loader/Servant_Activator.cpp b/TAO/tests/POA/Loader/Servant_Activator.cpp index 5bcaf80b63e..1ba1398febc 100644 --- a/TAO/tests/POA/Loader/Servant_Activator.cpp +++ b/TAO/tests/POA/Loader/Servant_Activator.cpp @@ -47,7 +47,11 @@ ServantActivator::ServantActivator (CORBA::ORB_ptr orb, // Cannot go from void* to function pointer directly. Cast the void* // to long first. void *symbol = this->dll_.symbol (factory_function); +#if defined (ACE_OPENVMS) && (!defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64)) + int intptr_t = reinterpret_cast<int> (symbol); +#else intptr_t function = reinterpret_cast<intptr_t> (symbol); +#endif servant_supplier_ = reinterpret_cast<SERVANT_FACTORY> (function); @@ -55,7 +59,11 @@ ServantActivator::ServantActivator (CORBA::ORB_ptr orb, // Obtain the symbol for the function which will destroy the // servant. symbol = this->dll_.symbol (garbage_collection_function); +#if defined (ACE_OPENVMS) && (!defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64)) + function = reinterpret_cast<int> (symbol); +#else function = reinterpret_cast<intptr_t> (symbol); +#endif servant_garbage_collector_ = reinterpret_cast<SERVANT_GARBAGE_COLLECTOR> (function); } |