summaryrefslogtreecommitdiff
path: root/ace/config-icc-common.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/config-icc-common.h')
-rw-r--r--ace/config-icc-common.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/ace/config-icc-common.h b/ace/config-icc-common.h
index c52b7192188..6a37c13690e 100644
--- a/ace/config-icc-common.h
+++ b/ace/config-icc-common.h
@@ -12,11 +12,24 @@
# define ACE_HAS_TYPENAME_KEYWORD
# define ACE_HAS_STANDARD_CPP_LIBRARY 1
# define ACE_HAS_TEMPLATE_SPECIALIZATION
-# define ACE_HAS_USING_KEYWORD
# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
# define ACE_HAS_STRING_CLASS
+#if defined (ACE_HAS_CUSTOM_EXPORT_MACROS) && ACE_HAS_CUSTOM_EXPORT_MACROS == 0
+# undef ACE_HAS_CUSTOM_EXPORT_MACROS
+#else
+# ifndef ACE_HAS_CUSTOM_EXPORT_MACROS
+# define ACE_HAS_CUSTOM_EXPORT_MACROS
+# endif /* !ACE_HAS_CUSTOM_EXPORT_MACROS */
+# define ACE_Proper_Export_Flag __attribute__ ((visibility("default")))
+# define ACE_Proper_Import_Flag
+# define ACE_EXPORT_SINGLETON_DECLARATION(T) template class ACE_Proper_Export_Flag T
+# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class ACE_Proper_Export_Flag SINGLETON_TYPE <CLASS, LOCK>;
+# define ACE_IMPORT_SINGLETON_DECLARATION(T) __extension__ extern template class T
+# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) __extension__ extern template class SINGLETON_TYPE<CLASS, LOCK>;
+#endif /* ACE_HAS_CUSTOM_EXPORT_MACROS == 0 */
+
// __EXCEPTIONS is defined with -fexceptions, the egcs default. It
// is not defined with -fno-exceptions, the ACE default for g++.
// ACE_HAS_EXCEPTIONS is defined in
@@ -50,9 +63,5 @@
#define ACE_TEMPLATES_REQUIRE_SOURCE
-# if defined (ACE_HAS_EXCEPTIONS)
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif /* ACE_HAS_EXCEPTIONS */
-
#include /**/ "ace/post.h"
#endif /* ACE_LINUX_ICC_COMMON_H */