williamr@2: /* STLport configuration file williamr@2: * It is internal STLport header - DO NOT include it directly williamr@2: */ williamr@2: williamr@2: #if defined (__IBMCPP__) || defined (__IBMC__) williamr@2: # define _STLP_COMPILER "Visual Age C++" williamr@2: #elif defined (__xlC__) williamr@2: # define _STLP_COMPILER "xlc" williamr@2: #else williamr@2: # error "Unknown compiler" williamr@2: #endif williamr@2: williamr@2: #if !defined(__IBMCPP__) || (__IBMCPP__ < 500) williamr@2: # define _STLP_HAS_NO_NEW_C_HEADERS 1 williamr@2: #endif williamr@2: williamr@2: /* string literal problem, same as with SUN and aCC */ williamr@2: # define _STLP_INLINE_STRING_LITERAL_BUG 1 williamr@2: # define _STLP_HAS_NATIVE_FLOAT_ABS williamr@2: williamr@2: # define _STLP_DEF_CONST_PLCT_NEW_BUG 1 williamr@2: # define _STLP_DEF_CONST_DEF_PARAM_BUG 1 williamr@2: williamr@2: williamr@2: # ifdef __IBMCPP__ williamr@2: # define _STLP_HAS_SPECIFIC_PROLOG_EPILOG williamr@2: # endif williamr@2: williamr@2: /* # if ( defined (__MULTI__) && defined (__WINDOWS__)) williamr@2: * # define _STLP_WIN32THREADS 1 Only Visual Age 3.5 for Windows williamr@2: * # endif williamr@2: */ williamr@2: williamr@2: # if ( defined (__MULTI__) && defined (__OS2__)) williamr@2: # define _STLP_OS2THREADS 1 williamr@2: # endif williamr@2: williamr@2: /* __TEMPINC__ is set when /Ft+ option is used */ williamr@2: # ifdef __TEMPINC__ williamr@2: # define _STLP_LINK_TIME_INSTANTIATION 1 williamr@2: # endif williamr@2: williamr@2: # if defined (__MVS__) williamr@2: /* long long support is buggy - reported by Tinny Ng williamr@2: * # if __EXTENDED__ && __COMPILER_VER__ >= 0x22060000 williamr@2: * # define _STLP_LONG_LONG long long williamr@2: * # endif williamr@2: */ williamr@2: /* boris : hstash reported it can be treated like UNIX */ williamr@2: # define _STLP_UNIX 1 williamr@2: # define _STLP_NO_TYPEINFO 1 williamr@2: # undef _STLP_NATIVE_INCLUDE_PATH williamr@2: # define _STLP_NATIVE_INCLUDE_PATH /usr/lpp/ioclib/include williamr@2: /* same for C headers like */ williamr@2: # undef _STLP_NATIVE_C_INCLUDE_PATH williamr@2: # define _STLP_NATIVE_C_INCLUDE_PATH /usr/include williamr@2: # define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH /usr/include williamr@2: williamr@2: # elif (defined (__WINDOWS__) || defined (_AIX) || defined (__OS2__) ) && (__IBMCPP__ >= 350) williamr@2: williamr@2: # define _STLP_LONG_LONG long long williamr@2: williamr@2: #endif williamr@2: williamr@2: #if !( defined( __xlC__ ) && __xlC__ >= 0x500 ) williamr@2: williamr@2: /* AIX xlC 3.1 , 3.0.1 ==0x301 williamr@2: * Visual Age C++ 3.x williamr@2: * OS-390 C++ williamr@2: * fbp : should be more version-specific! williamr@2: */ williamr@2: williamr@2: # define _STLP_NO_BOOL 1 williamr@2: # define _STLP_DONT_USE_BOOL_TYPEDEF 1 williamr@2: # define _STLP_LIMITED_DEFAULT_TEMPLATES 1 williamr@2: # define _STLP_HAS_NO_NAMESPACES 1 williamr@2: # define _STLP_NEED_TYPENAME 1 williamr@2: # define _STLP_NEED_EXPLICIT 1 williamr@2: # define _STLP_NO_ARROW_OPERATOR 1 williamr@2: # define _STLP_NO_NEW_STYLE_CASTS 1 williamr@2: # define _STLP_NO_WCHAR_T 1 williamr@2: # define _STLP_NEED_MUTABLE 1 williamr@2: # define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX 1 williamr@2: # define _STLP_NO_BAD_ALLOC 1 williamr@2: williamr@2: # define _STLP_NO_MEMBER_TEMPLATES 1 williamr@2: # define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1 williamr@2: # define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1 williamr@2: # define _STLP_NO_FRIEND_TEMPLATES 1 williamr@2: # define _STLP_NO_QUALIFIED_FRIENDS 1 williamr@2: # define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1 williamr@2: # define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1 williamr@2: williamr@2: # define _STLP_NO_DEFAULT_NON_TYPE_PARAM 1 williamr@2: # define _STLP_NO_METHOD_SPECIALIZATION 1 williamr@2: # define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS 1 williamr@2: # define _STLP_NO_EXCEPTION_HEADER 1 williamr@2: williamr@2: # define _STLP_NO_NEW_NEW_HEADER 1 williamr@2: williamr@2: # if defined (__OS2__) && (__IBMCPP__ <= 350) williamr@2: # define _STLP_NO_TYPEINFO 1 williamr@2: # endif williamr@2: # define _STLP_NO_NEW_NEW_HEADER 1 williamr@2: williamr@2: # define _STLP_STATIC_CONST_INIT_BUG 1 williamr@2: /* # define _STLP_THROW_RETURN_BUG 1 */ williamr@2: williamr@2: williamr@2: # define _STLP_NO_TEMPLATE_CONVERSIONS 1 williamr@2: # define _STLP_BASE_TYPEDEF_OUTSIDE_BUG 1 williamr@2: williamr@2: /* AIX xlC, Visual Age 3.0 for OS/2 and MS */ williamr@2: # define _STLP_TRIVIAL_DESTRUCTOR_BUG williamr@2: williamr@2: # define _STLP_NON_TYPE_TMPL_PARAM_BUG 1 williamr@2: # define _STLP_NONTEMPL_BASE_MATCH_BUG 1 williamr@2: williamr@2: #if __IBMCPP__ <= 350 williamr@2: # define _STLP_NEED_UNREACHABLE_RETURN 1 williamr@2: #endif williamr@2: williamr@2: #if __IBMCPP__ < 350 williamr@2: # define _STLP_NO_LONG_DOUBLE 1 williamr@2: #endif williamr@2: williamr@2: #if __IBMCPP__ >= 365 williamr@2: /* does not have new C headers, but has div() */ williamr@2: # define _STLP_LDIV williamr@2: #endif williamr@2: williamr@2: #endif /* xlC 5 */ williamr@2: williamr@2: /* detect xlC5 by: */ williamr@2: #if defined(__IBMCPP__) && (500 <= __IBMCPP__) && (__IBMCPP__ < 700) williamr@2: # define _STLP_USE_EXCEPTIONS 1 williamr@2: # define _STLP_STATIC_CONST_INIT_BUG 1 williamr@2: /* #pragma report(disable,CPPC1500029) williamr@2: * unsigned 32-bit integer type williamr@2: */ williamr@2: # define _STLP_UINT32_T unsigned int williamr@2: # if defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4) williamr@2: # define _STLP_RAND48 1 williamr@2: # endif williamr@2: /* # define _STLP_RAND48 1 */ williamr@2: #endif /* __IBMCPP__ == 500 */