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