epoc32/include/tools/stlport/stl/config/_sunprocc.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
child 4 837f303aceeb
permissions -rw-r--r--
Final list of Symbian^2 public API header files
williamr@2
     1
// STLport configuration file
williamr@2
     2
// It is internal STLport header - DO NOT include it directly
williamr@2
     3
williamr@2
     4
#define _STLP_COMPILER "Sunpro CC"
williamr@2
     5
williamr@2
     6
#define _STLP_LONG_LONG  long long
williamr@2
     7
williamr@2
     8
// GAB: 11/09/05
williamr@2
     9
// Starting with 5.0 the STLport code expects to be
williamr@2
    10
// instantiated during compile time. This is due to undefing
williamr@2
    11
// a number of defines that are also used in the c versions
williamr@2
    12
// of the file. When they are undefed the c version fails to
williamr@2
    13
// compile.
williamr@2
    14
// #  define _STLP_LINK_TIME_INSTANTIATION 1
williamr@2
    15
williamr@2
    16
#if ! defined(_BOOL)
williamr@2
    17
#  define _STLP_NO_BOOL 1
williamr@2
    18
#endif
williamr@2
    19
williamr@2
    20
// compatibility mode stuff
williamr@2
    21
#if (__SUNPRO_CC >= 0x510) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 ))
williamr@2
    22
#  define _STLP_NATIVE_INCLUDE_PATH ../CC/Cstd
williamr@2
    23
#  define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../CC
williamr@2
    24
#elif (__SUNPRO_CC >= 0x500) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 ))
williamr@2
    25
#  define _STLP_NATIVE_INCLUDE_PATH ../CC
williamr@2
    26
#elif (defined (__SUNPRO_CC_COMPAT) && __SUNPRO_CC_COMPAT == 4)
williamr@2
    27
#  define _STLP_NATIVE_INCLUDE_PATH ../CC4
williamr@2
    28
#else
williamr@2
    29
#  define _STLP_NATIVE_INCLUDE_PATH ../CC
williamr@2
    30
#endif
williamr@2
    31
williamr@2
    32
#define _STLP_STATIC_CONST_INIT_BUG 1
williamr@2
    33
williamr@2
    34
#if (__SUNPRO_CC < 0x530)
williamr@2
    35
// those are tested and proved not to work...
williamr@2
    36
#  define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
williamr@2
    37
#  define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
williamr@2
    38
#  define _STLP_USE_OLD_HP_ITERATOR_QUERIES
williamr@2
    39
#endif
williamr@2
    40
williamr@2
    41
#ifdef _STLP_USE_NO_IOSTREAMS
williamr@2
    42
#  define _STLP_HAS_NO_NEW_C_HEADERS 1
williamr@2
    43
#endif
williamr@2
    44
williamr@2
    45
// those do not depend on compatibility
williamr@2
    46
#if (__SUNPRO_CC < 0x510)
williamr@2
    47
#  define _STLP_NO_TYPENAME_ON_RETURN_TYPE 1
williamr@2
    48
#  define _STLP_NONTEMPL_BASE_MATCH_BUG 1
williamr@2
    49
#endif
williamr@2
    50
williamr@2
    51
#if (__SUNPRO_CC < 0x510) || (defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT < 5))
williamr@2
    52
williamr@2
    53
#  define _STLP_NO_QUALIFIED_FRIENDS 1
williamr@2
    54
williamr@2
    55
// no partial , just for explicit one
williamr@2
    56
#  define _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
williamr@2
    57
#  define _STLP_NON_TYPE_TMPL_PARAM_BUG 1
williamr@2
    58
williamr@2
    59
#  define _STLP_NO_MEMBER_TEMPLATES 1
williamr@2
    60
#  define _STLP_NO_FRIEND_TEMPLATES 1
williamr@2
    61
williamr@2
    62
#  define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
williamr@2
    63
#  define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS
williamr@2
    64
#  define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1
williamr@2
    65
#endif
williamr@2
    66
williamr@2
    67
// Features that depend on compatibility switch
williamr@2
    68
#if ( __SUNPRO_CC < 0x500 ) || (defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT < 5))
williamr@2
    69
williamr@2
    70
#  ifndef _STLP_USE_NO_IOSTREAMS
williamr@2
    71
#    define _STLP_USE_NO_IOSTREAMS 1
williamr@2
    72
#  endif
williamr@2
    73
#  define _STLP_NO_NEW_NEW_HEADER 1
williamr@2
    74
// #  define _STLP_NO_RELOPS_NAMESPACE
williamr@2
    75
#  define _STLP_HAS_NO_NAMESPACES 1
williamr@2
    76
#  define _STLP_NEED_MUTABLE  1
williamr@2
    77
#  define _STLP_NO_BAD_ALLOC 1
williamr@2
    78
#  define _STLP_NO_EXCEPTION_HEADER 1
williamr@2
    79
#  define _STLP_NATIVE_C_INCLUDE_PATH ../include
williamr@2
    80
#elif (__SUNPRO_CC < 0x510)
williamr@2
    81
// #  define _STLP_NATIVE_C_HEADER(header) <../CC/##header##.SUNWCCh>
williamr@2
    82
#  define _STLP_NATIVE_CPP_C_HEADER(header) <../CC/##header##.SUNWCCh>
williamr@2
    83
#  define _STLP_NATIVE_C_INCLUDE_PATH /usr/include
williamr@2
    84
#elif defined( __SunOS_5_5_1 ) || defined( __SunOS_5_6 ) || defined( __SunOS_5_7 )
williamr@2
    85
#  define _STLP_NATIVE_C_INCLUDE_PATH ../CC/std
williamr@2
    86
#  define _STLP_NATIVE_CPP_C_INCLUDE_PATH ../CC/std
williamr@2
    87
#else
williamr@2
    88
#  define _STLP_NATIVE_C_INCLUDE_PATH /usr/include
williamr@2
    89
#  define _STLP_NATIVE_CPP_C_INCLUDE_PATH ../CC/std
williamr@2
    90
#endif
williamr@2
    91
williamr@2
    92
#if ( __SUNPRO_CC < 0x500 )
williamr@2
    93
williamr@2
    94
#  undef _STLP_NATIVE_C_HEADER
williamr@2
    95
#  undef _STLP_NATIVE_CPP_C_HEADER
williamr@2
    96
williamr@2
    97
#  define wint_t __wint_t
williamr@2
    98
// famous CC 4.2 bug
williamr@2
    99
#  define _STLP_INLINE_STRING_LITERAL_BUG 1
williamr@2
   100
// /usr/include
williamr@2
   101
#  define _STLP_NATIVE_C_INCLUDE_PATH ../include
williamr@2
   102
williamr@2
   103
// 4.2 cannot handle iterator_traits<_Tp>::iterator_category as a return type ;(
williamr@2
   104
#  define _STLP_USE_OLD_HP_ITERATOR_QUERIES
williamr@2
   105
williamr@2
   106
// 4.2 does not like it
williamr@2
   107
#  undef  _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
williamr@2
   108
williamr@2
   109
#  define _STLP_LIMITED_DEFAULT_TEMPLATES 1
williamr@2
   110
williamr@2
   111
#  define _STLP_NEED_TYPENAME 1
williamr@2
   112
#  define _STLP_NEED_EXPLICIT 1
williamr@2
   113
#  define _STLP_NO_BAD_ALLOC 1
williamr@2
   114
#  define _STLP_NO_ARROW_OPERATOR 1
williamr@2
   115
williamr@2
   116
#  define _STLP_DEF_CONST_PLCT_NEW_BUG 1
williamr@2
   117
#  define _STLP_DEF_CONST_DEF_PARAM_BUG 1
williamr@2
   118
#  define _STLP_GLOBAL_NESTED_RETURN_TYPE_PARAM_BUG 1
williamr@2
   119
#  undef  _STLP_HAS_NO_NEW_C_HEADERS
williamr@2
   120
#  define _STLP_HAS_NO_NEW_C_HEADERS 1
williamr@2
   121
// #  define _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS
williamr@2
   122
williamr@2
   123
#  if ( __SUNPRO_CC < 0x420 )
williamr@2
   124
#    define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX 1
williamr@2
   125
#    define _STLP_NO_NEW_STYLE_CASTS 1
williamr@2
   126
#    define _STLP_NO_METHOD_SPECIALIZATION 1
williamr@2
   127
#    if ( __SUNPRO_CC > 0x401 )
williamr@2
   128
#      if (__SUNPRO_CC==0x410)
williamr@2
   129
#        define _STLP_BASE_TYPEDEF_OUTSIDE_BUG  1
williamr@2
   130
#      endif
williamr@2
   131
#    else
williamr@2
   132
   // SUNPro C++ 4.0.1
williamr@2
   133
#      define _STLP_BASE_MATCH_BUG          1
williamr@2
   134
#      define _STLP_BASE_TYPEDEF_BUG        1
williamr@2
   135
#      if (( __SUNPRO_CC < 0x401 ) && !defined(__SUNPRO_C))
williamr@2
   136
         __GIVE_UP_WITH_STL(SUNPRO_401)
williamr@2
   137
#      endif
williamr@2
   138
#    endif /* 4.0.1 */
williamr@2
   139
#  endif /* 4.2 */
williamr@2
   140
#endif /* <  5.0 */
williamr@2
   141
williamr@2
   142
#ifndef _MBSTATET_H
williamr@2
   143
#  define _MBSTATET_H
williamr@2
   144
#  undef _MBSTATE_T
williamr@2
   145
#  define _MBSTATE_T
williamr@2
   146
typedef struct __mbstate_t {
williamr@2
   147
#  if defined(_LP64)
williamr@2
   148
  long    __filler[4];
williamr@2
   149
#  else
williamr@2
   150
  int     __filler[6];
williamr@2
   151
#  endif
williamr@2
   152
} __mbstate_t;
williamr@2
   153
#  ifndef _STLP_HAS_NO_NAMESPACES
williamr@2
   154
namespace std {
williamr@2
   155
  typedef __mbstate_t mbstate_t;
williamr@2
   156
}
williamr@2
   157
using std::mbstate_t;
williamr@2
   158
#  else
williamr@2
   159
typedef __mbstate_t mbstate_t;
williamr@2
   160
#  endif
williamr@2
   161
#endif  /* __MBSTATET_H */