home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / stlpt453.zip / STLport-4.5.3 / stlport / config / stl_ibm.h < prev    next >
C/C++ Source or Header  |  2001-08-24  |  4KB  |  139 lines

  1. // STLport configuration file
  2. // It is internal STLport header - DO NOT include it directly
  3.  
  4. #if !defined(__IBMCPP__) || (__IBMCPP__ < 500)
  5. # define _STLP_HAS_NO_NEW_C_HEADERS 1
  6. #endif
  7.  
  8. // string literal problem, same as with SUN and aCC
  9. # define _STLP_INLINE_STRING_LITERAL_BUG 1
  10. # define _STLP_HAS_NATIVE_FLOAT_ABS
  11.  
  12. #  define _STLP_DEFAULT_CONSTRUCTOR_BUG 1
  13.  
  14.  
  15. # ifdef __IBMCPP__
  16. #  define _STLP_HAS_SPECIFIC_PROLOG_EPILOG
  17. # endif
  18.  
  19. // #  if ( defined (__MULTI__) && defined (__WINDOWS__))
  20. // #   define  _STLP_WIN32THREADS 1          // Only Visual Age 3.5 for Windows
  21. // #  endif
  22.  
  23. #  if ( defined (__MULTI__) && defined (__OS2__))
  24. #   define _STLP_OS2THREADS 1
  25. #  endif
  26.  
  27. // __TEMPINC__ is set when /Ft+ option is used
  28. #  ifdef __TEMPINC__
  29. #    define _STLP_LINK_TIME_INSTANTIATION 1
  30. #  endif
  31.  
  32. # if defined (__MVS__)
  33. // long long support is buggy - reported by Tinny Ng
  34. // #  if __EXTENDED__ && __COMPILER_VER__ >= 0x22060000
  35. // #   define _STLP_LONG_LONG long long
  36. // #  endif
  37. // boris : hstash reported it can be treated like UNIX
  38. #  define _STLP_UNIX 1
  39. #  define _STLP_NO_TYPEINFO 1
  40. #  undef _STLP_NATIVE_INCLUDE_PATH
  41. #  define _STLP_NATIVE_INCLUDE_PATH /usr/lpp/ioclib/include
  42. // same for C headers like <string.h>
  43. #  undef _STLP_NATIVE_C_INCLUDE_PATH
  44. #  define _STLP_NATIVE_C_INCLUDE_PATH /usr/include
  45. #  define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH /usr/include
  46.  
  47. # elif (defined (__WINDOWS__) || defined (_AIX) || defined (__OS2__) ) && (__IBMCPP__ >= 350)
  48.  
  49. #  define _STLP_LONG_LONG long long
  50.  
  51. #endif
  52.  
  53. #if !( defined( __xlC__ ) && __xlC__ >= 0x500 )
  54.  
  55. // AIX xlC 3.1 , 3.0.1 ==0x301
  56. // Visual Age C++ 3.x
  57. // OS-390 C++
  58. // fbp : should be more version-specific!
  59.  
  60. #  define _STLP_NO_BOOL 1
  61. #  define _STLP_DONT_USE_BOOL_TYPEDEF 1
  62. #  define _STLP_LIMITED_DEFAULT_TEMPLATES 1
  63. #  define _STLP_HAS_NO_NAMESPACES 1
  64. #  define _STLP_NEED_TYPENAME 1
  65. #  define _STLP_NEED_EXPLICIT 1
  66. #  define _STLP_NO_ARROW_OPERATOR 1
  67. #  define _STLP_NO_NEW_STYLE_CASTS 1
  68. #  define _STLP_NO_WCHAR_T 1
  69. #  define _STLP_NEED_MUTABLE 1
  70. #  define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX 1
  71. #  define _STLP_NO_BAD_ALLOC 1
  72.  
  73. #  define _STLP_NO_MEMBER_TEMPLATES 1
  74. #  define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
  75. #  define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1
  76. #  define _STLP_NO_FRIEND_TEMPLATES 1
  77. #  define _STLP_NO_QUALIFIED_FRIENDS 1
  78. #  define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
  79. #  define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
  80.  
  81. #  define _STLP_NO_DEFAULT_NON_TYPE_PARAM 1
  82. #  define _STLP_NO_METHOD_SPECIALIZATION 1
  83. #  define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS 1
  84. #  define _STLP_NO_EXCEPTION_HEADER 1
  85.  
  86. #  define _STLP_HAS_NO_NEW_IOSTREAMS 1
  87. #  define _STLP_NO_NEW_NEW_HEADER 1
  88.  
  89. #  if defined (__OS2__) && (__IBMCPP__ <= 350)
  90. #   define _STLP_NO_TYPEINFO 1
  91. #  endif
  92. #  define _STLP_NO_NEW_NEW_HEADER 1
  93.  
  94. #  define _STLP_STATIC_CONST_INIT_BUG 1
  95. // #  define _STLP_THROW_RETURN_BUG 1
  96.  
  97.  
  98. #  define _STLP_NO_TEMPLATE_CONVERSIONS 1
  99. #  define _STLP_UNINITIALIZABLE_PRIVATE 1
  100. #  define _STLP_BASE_TYPEDEF_OUTSIDE_BUG 1
  101. #  define _STLP_STATIC_ARRAY_BUG 1
  102.  
  103. // AIX xlC, Visual Age 3.0 for OS/2 and MS 
  104. #  define _STLP_TRIVIAL_DESTRUCTOR_BUG
  105.  
  106. #  define _STLP_NON_TYPE_TMPL_PARAM_BUG 1
  107. #  define _STLP_NONTEMPL_BASE_MATCH_BUG 1
  108.  
  109. #if __IBMCPP__ <= 350
  110. #  define _STLP_NEED_UNREACHABLE_RETURN 1
  111. #endif
  112.  
  113. #if __IBMCPP__ < 350
  114. #  define _STLP_NO_LONG_DOUBLE 1
  115. #endif
  116.  
  117. #if __IBMCPP__ >= 365
  118. // does not have new C headers, but has div()
  119. #  define _STLP_LDIV
  120. #endif
  121.  
  122. #endif /* xlC 5 */
  123.  
  124. /* detect xlC5 by: */
  125. #if defined(__IBMCPP__) && (500 <= __IBMCPP__) && (__IBMCPP__ < 600)
  126. #define _STLP_USE_EXCEPTIONS 1
  127. #define _STLP_STATIC_CONST_INIT_BUG 1 
  128. //#pragma report(disable,CPPC1500029)
  129. // unsigned 32-bit integer type
  130. #  define _STLP_UINT32_T unsigned int
  131. #if defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4)
  132. # define _STLP_RAND48 1
  133. #endif
  134. // #  define _STLP_RAND48 1
  135. # endif /* __IBMCPP__ == 500 */
  136.  
  137.  
  138.  
  139.