summaryrefslogtreecommitdiff
path: root/ace/Global_Macros.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Global_Macros.h')
-rw-r--r--ace/Global_Macros.h135
1 files changed, 23 insertions, 112 deletions
diff --git a/ace/Global_Macros.h b/ace/Global_Macros.h
index 9b6579f87de..83ea5603395 100644
--- a/ace/Global_Macros.h
+++ b/ace/Global_Macros.h
@@ -28,7 +28,6 @@
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include "ace/config-lite.h"
-#include "ace/Assert.h" // For ACE_ASSERT
// Start Global Macros
# define ACE_BEGIN_DUMP ACE_LIB_TEXT ("\n====\n(%P|%t|%x)\n")
@@ -49,9 +48,6 @@
# if defined (_DEBUG) && !defined (ACE_HAS_WINCE) && !defined (__BORLANDC__)
# include /**/ <crtdbg.h>
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
class ACE_Export ACE_No_Heap_Check
{
public:
@@ -62,10 +58,6 @@ public:
private:
int old_state;
};
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-
# define ACE_NO_HEAP_CHECK ACE_No_Heap_Check ____no_heap;
# else /* !_DEBUG */
# define ACE_NO_HEAP_CHECK
@@ -78,7 +70,7 @@ ACE_END_VERSIONED_NAMESPACE_DECL
# define ACE_ITOA(X) #X
// Create a string of a server address with a "host:port" format.
-# define ACE_SERVER_ADDRESS(H,P) H ACE_TEXT(":") P
+# define ACE_SERVER_ADDRESS(H,P) H ACE_LIB_TEXT(":") P
// A couple useful inline functions for checking whether bits are
// enabled or disabled.
@@ -594,27 +586,6 @@ static ACE_Static_Svc_##SERVICE_CLASS ace_static_svc_##SERVICE_CLASS;
#endif /* !ACE_LACKS_STATIC_CONSTRUCTORS */
-// Preprocessor symbols will not be expanded if they are
-// concatenated. Force the preprocessor to expand them during the
-// argument prescan by calling a macro that itself calls another that
-// performs the actual concatenation.
-#define ACE_PREPROC_CONCATENATE_IMPL(A,B) A ## B
-#define ACE_PREPROC_CONCATENATE(A,B) ACE_PREPROC_CONCATENATE_IMPL(A,B)
-
-#if defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1
-// Preprocessor symbols will not be expanded if they are
-// concatenated. Force the preprocessor to expand them during the
-// argument prescan by calling a macro that itself calls another that
-// performs the actual concatenation.
-# define ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(PREFIX,VERSIONED_NAMESPACE,SERVICE_CLASS) PREFIX ## _ ## VERSIONED_NAMESPACE ## _ ## SERVICE_CLASS
-#else
-# define ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(PREFIX,VERSIONED_NAMESPACE,SERVICE_CLASS) PREFIX ## _ ## SERVICE_CLASS
-#endif /* ACE_HAS_VERSIONED_NAMESPACE == 1 */
-
-#define ACE_MAKE_SVC_CONFIG_FACTORY_NAME(VERSIONED_NAMESPACE,SERVICE_CLASS) ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(_make,VERSIONED_NAMESPACE,SERVICE_CLASS)
-#define ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(VERSIONED_NAMESPACE,SERVICE_CLASS) ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(_gobble,VERSIONED_NAMESPACE,SERVICE_CLASS)
-
-
/// Declare the factory method used to create dynamically loadable
/// services.
/**
@@ -631,20 +602,9 @@ static ACE_Static_Svc_##SERVICE_CLASS ace_static_svc_##SERVICE_CLASS;
* implements the service.
*
*/
-#if defined (_MSC_VER) && _MSC_VER <= 1200
-// MSVC++ 6's preprocessor can't handle macro expansions required by
-// the versioned namespace support. *sigh*
-/**
- * @todo Remove this macro once we drop MSVC++ 6 support.
- */
-# define ACE_FACTORY_DECLARE(CLS,SERVICE_CLASS) \
-extern "C" CLS##_Export ACE_Service_Object * \
-_make_ ## SERVICE_CLASS (ACE_Service_Object_Exterminator *);
-#else
-# define ACE_FACTORY_DECLARE(CLS,SERVICE_CLASS) \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * \
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *);
-#endif /* _MSC_VER <= 1200*/
+#define ACE_FACTORY_DECLARE(CLS,SERVICE_CLASS) \
+extern "C" CLS##_Export ACE_Service_Object *\
+_make_##SERVICE_CLASS (ACE_Service_Object_Exterminator *);
/// Define the factory method (and destructor) for a dynamically
/// loadable service.
@@ -662,42 +622,19 @@ ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (AC
*/
# define ACE_Local_Service_Export
-#if defined (_MSC_VER) && _MSC_VER <= 1200
-// MSVC++ 6's preprocessor can't handle macro expansions required by
-// the versioned namespace support. *sigh*
-/**
- * @todo Remove this macro once we drop MSVC++ 6 support.
- */
# define ACE_FACTORY_DEFINE(CLS,SERVICE_CLASS) \
-void _gobble_ ## SERVICE_CLASS (void *p) { \
- ACE_Service_Object * _p = \
- static_cast<ACE_Service_Object *> (p); \
+void _gobble_##SERVICE_CLASS (void *p) { \
+ ACE_Service_Object *_p = static_cast<ACE_Service_Object *> (p); \
ACE_ASSERT (_p != 0); \
delete _p; } \
extern "C" CLS##_Export ACE_Service_Object *\
-_make_ ## SERVICE_CLASS (ACE_Service_Object_Exterminator *gobbler) \
-{ \
- ACE_TRACE (#SERVICE_CLASS); \
- if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) _gobble_ ## SERVICE_CLASS; \
- return new SERVICE_CLASS; \
-}
-#else
-# define ACE_FACTORY_DEFINE(CLS,SERVICE_CLASS) \
-void ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (void *p) { \
- ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * _p = \
- static_cast< ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *> (p); \
- ACE_ASSERT (_p != 0); \
- delete _p; } \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *\
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *gobbler) \
+_make_##SERVICE_CLASS (ACE_Service_Object_Exterminator *gobbler) \
{ \
ACE_TRACE (#SERVICE_CLASS); \
if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS); \
+ *gobbler = (ACE_Service_Object_Exterminator) _gobble_##SERVICE_CLASS; \
return new SERVICE_CLASS; \
}
-#endif /* _MSC_VER <= 1200 */
/**
* For service classes scoped within namespaces, use this macro in
@@ -725,58 +662,26 @@ ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (AC
* this will ensure unique generated signatures for the various C
* style functions.
*/
-#if defined (_MSC_VER) && _MSC_VER <= 1200
-// MSVC++ 6's preprocessor can't handle macro expansions required by
-// the versioned namespace support. *sigh*
-/**
- * @todo Remove this macro once we drop MSVC++ 6 support.
- */
# define ACE_FACTORY_NAMESPACE_DEFINE(CLS,SERVICE_CLASS,NAMESPACE_CLASS) \
-void _gobble_ ## SERVICE_CLASS (void *p) { \
- ACE_Service_Object * _p = \
- static_cast<ACE_Service_Object *> (p); \
+void _gobble_##SERVICE_CLASS (void *p) { \
+ ACE_Service_Object *_p = static_cast<ACE_Service_Object *> (p); \
ACE_ASSERT (_p != 0); \
delete _p; } \
extern "C" CLS##_Export ACE_Service_Object *\
-_make_ ## SERVICE_CLASS (ACE_Service_Object_Exterminator *gobbler) \
-{ \
- ACE_TRACE (#SERVICE_CLASS); \
- if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) _gobble_ ## SERVICE_CLASS; \
- return new NAMESPACE_CLASS; \
-}
-#else
-# define ACE_FACTORY_NAMESPACE_DEFINE(CLS,SERVICE_CLASS,NAMESPACE_CLASS) \
-void ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (void *p) { \
- ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * _p = \
- static_cast< ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *> (p); \
- ACE_ASSERT (_p != 0); \
- delete _p; } \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *\
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *gobbler) \
+_make_##SERVICE_CLASS (ACE_Service_Object_Exterminator *gobbler) \
{ \
ACE_TRACE (#SERVICE_CLASS); \
if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS); \
+ *gobbler = (ACE_Service_Object_Exterminator) _gobble_##SERVICE_CLASS; \
return new NAMESPACE_CLASS; \
}
-#endif /* _MSC_VER <= 1200 */
/// The canonical name for a service factory method
-#if defined (_MSC_VER) && _MSC_VER <= 1200
-// MSVC++ 6's preprocessor can't handle macro expansions required by
-// the versioned namespace support. *sigh*
-/**
- * @todo Remove this macro once we drop MSVC++ 6 support.
- */
-# define ACE_SVC_NAME(SERVICE_CLASS) _make_ ## SERVICE_CLASS
-#else
-# define ACE_SVC_NAME(SERVICE_CLASS) ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS)
-#endif /* ACE_SVC_NAME */
+#define ACE_SVC_NAME(SERVICE_CLASS) _make_##SERVICE_CLASS
/// The canonical way to invoke (i.e. construct) a service factory
/// method.
-#define ACE_SVC_INVOKE(SERVICE_CLASS) ACE_SVC_NAME(SERVICE_CLASS) (0)
+#define ACE_SVC_INVOKE(SERVICE_CLASS) _make_##SERVICE_CLASS (0)
//@}
@@ -942,9 +847,15 @@ ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (AC
# define ACE_SEH_EXCEPT(X) while (0)
# define ACE_SEH_FINALLY if (1)
# elif defined(__BORLANDC__)
-# define ACE_SEH_TRY try
-# define ACE_SEH_EXCEPT(X) __except(X)
-# define ACE_SEH_FINALLY __finally
+# if (__BORLANDC__ >= 0x0530) /* Borland C++ Builder 3.0 */
+# define ACE_SEH_TRY try
+# define ACE_SEH_EXCEPT(X) __except(X)
+# define ACE_SEH_FINALLY __finally
+# else
+# define ACE_SEH_TRY if (1)
+# define ACE_SEH_EXCEPT(X) while (0)
+# define ACE_SEH_FINALLY if (1)
+# endif
# elif defined (__IBMCPP__) && (__IBMCPP__ >= 400)
# define ACE_SEH_TRY if (1)
# define ACE_SEH_EXCEPT(X) while (0)