diff options
Diffstat (limited to 'ACE/ace/Service_Gestalt.cpp')
-rw-r--r-- | ACE/ace/Service_Gestalt.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/ACE/ace/Service_Gestalt.cpp b/ACE/ace/Service_Gestalt.cpp index 95b3989009b..8b395d88b89 100644 --- a/ACE/ace/Service_Gestalt.cpp +++ b/ACE/ace/Service_Gestalt.cpp @@ -853,8 +853,14 @@ ACE_Service_Gestalt::get_xml_svc_conf (ACE_DLL &xmldll) void * foo = xmldll.symbol (ACE_TEXT ("_ACEXML_create_XML_Svc_Conf_Object")); - ACE_XML_Svc_Conf::Factory factory = - reinterpret_cast<ACE_XML_Svc_Conf::Factory> (foo); +#if defined (ACE_OPENVMS) && (!defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64)) + int const temp_p = reinterpret_cast<int> (foo); +#else + intptr_t const temp_p = reinterpret_cast<intptr_t> (foo); +#endif + + ACE_XML_Svc_Conf::Factory factory = reinterpret_cast<ACE_XML_Svc_Conf::Factory> (temp_p); + if (factory == 0) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("ACE (%P|%t) Unable to resolve factory: %p\n"), |