stdcpp/include/config/stl_sunpro.h
changeset 0 e4d67989cc36
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1 // STLport configuration file
       
     2 // It is internal STLport header - DO NOT include it directly
       
     3 
       
     4 #  define _STLP_LONG_LONG  long long
       
     5 #  define _STLP_LINK_TIME_INSTANTIATION 1
       
     6 
       
     7 # if ! defined(_BOOL)
       
     8 #  define _STLP_NO_BOOL 1
       
     9 # endif
       
    10 
       
    11 #  if (__SUNPRO_CC >= 0x500 ) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 )) \
       
    12     && defined (_STLP_NO_OWN_IOSTREAMS) && ! defined (_STLP_HAS_NO_NEW_IOSTREAMS)
       
    13 #    error "The wrapper (_STLP_NO_OWN_IOSTREAMS) mode does not work well without _STLP_HAS_NO_NEW_IOSTREAMS. Please set this flag. You will also have to use -liostream option on link phase."
       
    14 // #   define _STLP_HAS_NO_NEW_IOSTREAMS
       
    15 #  endif
       
    16 
       
    17 // compatibility mode stuff
       
    18 # if (__SUNPRO_CC >= 0x510) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 ))
       
    19 #  define _STLP_NATIVE_INCLUDE_PATH ../CC/Cstd
       
    20 #  define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH ../CC
       
    21 # elif (__SUNPRO_CC >= 0x500) && (!defined (__SUNPRO_CC_COMPAT) || (__SUNPRO_CC_COMPAT == 5 ))
       
    22 #  define _STLP_NATIVE_INCLUDE_PATH ../CC
       
    23 # elif (defined (__SUNPRO_CC_COMPAT) && __SUNPRO_CC_COMPAT == 4)
       
    24 #  define _STLP_NATIVE_INCLUDE_PATH ../CC4
       
    25 # else
       
    26 #  define _STLP_NATIVE_INCLUDE_PATH ../CC
       
    27 # endif
       
    28 
       
    29 #  if (__SUNPRO_CC >= 0x500 ) && ( defined (_STLP_NO_NEW_IOSTREAMS) || defined (_STLP_HAS_NO_NEW_IOSTREAMS) )
       
    30 // if the project is set up to use libiostream (_STLP_NO_NEW_IOSTREAMS should be defined then),
       
    31 // use classic iostreams
       
    32 #   define _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH ../CCios
       
    33 #  endif
       
    34 
       
    35 #  define _STLP_STATIC_CONST_INIT_BUG 1
       
    36 
       
    37 # if (__SUNPRO_CC < 0x530)
       
    38 // those are tested and proved not to work...
       
    39 #  define _STLP_STATIC_ARRAY_BUG 1
       
    40 #  define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
       
    41 #  define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
       
    42 #  define _STLP_USE_OLD_HP_ITERATOR_QUERIES
       
    43 # endif 
       
    44 
       
    45 
       
    46 # if defined (_STLP_OWN_IOSTREAMS)
       
    47 //#  if ! defined (_STLP_NO_OWN_NAMESPACE)
       
    48 //#   define _STLP_NO_OWN_NAMESPACE
       
    49 //#  endif
       
    50 # else
       
    51 #  define _STLP_HAS_NO_NEW_C_HEADERS 1
       
    52 # endif
       
    53 
       
    54 // those do not depend on compatibility
       
    55 # if (__SUNPRO_CC < 0x510)
       
    56 #  define _STLP_NO_TYPENAME_ON_RETURN_TYPE 1 
       
    57 #  define _STLP_NONTEMPL_BASE_MATCH_BUG 1
       
    58 # endif
       
    59 
       
    60 # if (__SUNPRO_CC < 0x510) || (defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT < 5))
       
    61 
       
    62 #  define _STLP_NO_QUALIFIED_FRIENDS 1
       
    63 
       
    64 // no partial , just for explicit one
       
    65 #  define _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
       
    66 #  define _STLP_NON_TYPE_TMPL_PARAM_BUG 1
       
    67 
       
    68 #  define _STLP_NO_MEMBER_TEMPLATES 1
       
    69 #  define _STLP_NO_FRIEND_TEMPLATES 1
       
    70 
       
    71 #  define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
       
    72 #  define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS
       
    73 #  define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1
       
    74 # endif
       
    75 
       
    76 // Features that depend on compatibility switch
       
    77 # if ( __SUNPRO_CC < 0x500 ) || (defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT < 5))
       
    78 
       
    79 #  ifndef _STLP_HAS_NO_NEW_IOSTREAMS
       
    80 #   define _STLP_HAS_NO_NEW_IOSTREAMS 1
       
    81 #  endif
       
    82 #  define _STLP_NO_NEW_NEW_HEADER 1
       
    83 // #  define _STLP_NO_RELOPS_NAMESPACE
       
    84 #  define _STLP_HAS_NO_NAMESPACES 1
       
    85 #  define _STLP_NEED_MUTABLE  1
       
    86 #  define _STLP_NO_BAD_ALLOC 1
       
    87 #  define _STLP_NO_EXCEPTION_HEADER 1
       
    88 #  define _STLP_NATIVE_C_INCLUDE_PATH ../include
       
    89 # elif (__SUNPRO_CC < 0x510)
       
    90 // #  define _STLP_NATIVE_C_HEADER(header) <../CC/##header##.SUNWCCh>
       
    91 #  define _STLP_NATIVE_CPP_C_HEADER(header) <../CC/##header##.SUNWCCh>
       
    92 #  define _STLP_NATIVE_C_INCLUDE_PATH /usr/include
       
    93 # elif defined( __SunOS_5_5_1 ) || defined( __SunOS_5_6 ) || defined( __SunOS_5_7 )
       
    94 #  define _STLP_NATIVE_C_INCLUDE_PATH ../CC/std
       
    95 #  define _STLP_NATIVE_CPP_C_INCLUDE_PATH ../CC/std
       
    96 # else
       
    97 #  define _STLP_NATIVE_C_INCLUDE_PATH /usr/include
       
    98 #  define _STLP_NATIVE_CPP_C_INCLUDE_PATH ../CC/std
       
    99 # endif
       
   100 
       
   101 
       
   102 
       
   103 #  if ( __SUNPRO_CC < 0x500 )
       
   104 
       
   105 # undef _STLP_NATIVE_C_HEADER
       
   106 # undef _STLP_NATIVE_CPP_C_HEADER
       
   107 
       
   108 #   define wint_t __wint_t 
       
   109 // famous CC 4.2 bug
       
   110 #   define _STLP_INLINE_STRING_LITERAL_BUG 1
       
   111 // /usr/include
       
   112 #   define _STLP_NATIVE_C_INCLUDE_PATH ../include
       
   113 
       
   114 // 4.2 cannot handle iterator_traits<_Tp>::iterator_category as a return type ;(
       
   115 #  define _STLP_USE_OLD_HP_ITERATOR_QUERIES
       
   116 
       
   117 // 4.2 does not like it
       
   118 #  undef  _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
       
   119 
       
   120 #  define _STLP_LIMITED_DEFAULT_TEMPLATES 1
       
   121 
       
   122 #  define _STLP_NEED_TYPENAME 1
       
   123 #  define _STLP_NEED_EXPLICIT 1
       
   124 #  define _STLP_UNINITIALIZABLE_PRIVATE 1
       
   125 #  define _STLP_NO_BAD_ALLOC 1
       
   126 #  define _STLP_NO_ARROW_OPERATOR 1
       
   127 
       
   128 #  define _STLP_DEFAULT_CONSTRUCTOR_BUG 1
       
   129 #  define _STLP_GLOBAL_NESTED_RETURN_TYPE_PARAM_BUG 1
       
   130 #  undef  _STLP_HAS_NO_NEW_C_HEADERS
       
   131 #  define _STLP_HAS_NO_NEW_C_HEADERS 1
       
   132 // #  define _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS
       
   133 
       
   134 #   if ( __SUNPRO_CC < 0x420 )
       
   135 #    define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX 1
       
   136 #    define _STLP_NO_NEW_STYLE_CASTS 1
       
   137 #    define _STLP_NO_METHOD_SPECIALIZATION 1
       
   138 #    if ( __SUNPRO_CC > 0x401 )
       
   139 #     if (__SUNPRO_CC==0x410)
       
   140 #      define _STLP_BASE_TYPEDEF_OUTSIDE_BUG  1
       
   141 #     endif
       
   142 #    else
       
   143    // SUNPro C++ 4.0.1
       
   144 #     define _STLP_BASE_MATCH_BUG          1
       
   145 #     define _STLP_BASE_TYPEDEF_BUG        1
       
   146 #      if ( __SUNPRO_CC < 0x401 )
       
   147         __GIVE_UP_WITH_STL(SUNPRO_401)
       
   148 #      endif
       
   149 #    endif /* 4.0.1 */
       
   150 #   endif /* 4.2 */
       
   151 
       
   152 #  endif /* <  5.0 */
       
   153 
       
   154 # include <config/stl_solaris.h>
       
   155 
       
   156 #ifndef _MBSTATET_H
       
   157 #   define _MBSTATET_H
       
   158 #   undef _MBSTATE_T
       
   159 #   define _MBSTATE_T
       
   160     typedef struct __mbstate_t {
       
   161       #if defined(_LP64)
       
   162         long    __filler[4];
       
   163       #else
       
   164         int     __filler[6];
       
   165       #endif
       
   166     } __mbstate_t;
       
   167 # ifndef _STLP_HAS_NO_NAMESPACES
       
   168     namespace std {
       
   169         typedef __mbstate_t     mbstate_t;
       
   170     }
       
   171     using std::mbstate_t;
       
   172 #else
       
   173 typedef __mbstate_t mbstate_t;
       
   174 # endif
       
   175 #endif  /* __MBSTATET_H */