diff options
-rw-r--r-- | ace/config-g++-common.h | 11 | ||||
-rw-r--r-- | ace/config-linux-common.h | 4 |
2 files changed, 10 insertions, 5 deletions
diff --git a/ace/config-g++-common.h b/ace/config-g++-common.h index f557f31e9f3..31aaa96178d 100644 --- a/ace/config-g++-common.h +++ b/ace/config-g++-common.h @@ -9,12 +9,21 @@ #define ACE_GNUG_COMMON_H #if __GNUC__ > 2 || ( __GNUC__ == 2 && __GNUC_MINOR__ >= 90) - // egcs or really modern gcc + // egcs or really modern g++ # define ACE_HAS_ANSI_CASTS # define ACE_HAS_CPLUSPLUS_HEADERS # define ACE_HAS_STDCPP_STL_INCLUDES # define ACE_HAS_TEMPLATE_TYPEDEFS # define ACE_HAS_TYPENAME_KEYWORD + +#elif __GNUC__ > 2 || ( __GNUC__ == 2 && __GNUC_MINOR__ >= 8) + // egcs or g++ >= 2.8.0 +// __EXCEPTIONS is defined with -fexceptions, the default. It is not +// defined with -fno-exceptions. +# if defined (__EXCEPTIONS) && !defined (ACE_HAS_EXCEPTIONS) +# define ACE_HAS_EXCEPTIONS +# endif /* __EXCEPTIONS && ! ACE_HAS_EXCEPTIONS */ + #else /* ! EGCS */ // Plain old g++. # define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES diff --git a/ace/config-linux-common.h b/ace/config-linux-common.h index b38cda36fe8..b15ea2751ef 100644 --- a/ace/config-linux-common.h +++ b/ace/config-linux-common.h @@ -167,8 +167,4 @@ # define ACE_NTRACE 1 #endif /* ACE_NTRACE */ -#if !defined (__EXCEPTIONS) && defined (ACE_HAS_EXCEPTIONS) -# error ACE_HAS_EXCEPTIONS requested but old g++ does not support it well -#endif /* ! __EXCEPTIONS && ACE_HAS_EXCEPTIONS */ - #endif /* ACE_LINUX_COMMON_H */ |