epoc32/include/stdapis/stlportv5/stl/_cwchar.h
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
     1.1 --- a/epoc32/include/stdapis/stlportv5/stl/_cwchar.h	Wed Mar 31 12:27:01 2010 +0100
     1.2 +++ b/epoc32/include/stdapis/stlportv5/stl/_cwchar.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -1,12 +1,13 @@
     1.4  /*
     1.5 - * © Portions copyright (c) 2006-2007 Nokia Corporation.  All rights reserved.
     1.6 + * Portions Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
     1.7 + *
     1.8   * Copyright (c) 1999
     1.9   * Boris Fomitchev
    1.10   *
    1.11   * This material is provided "as is", with absolutely no warranty expressed
    1.12   * or implied. Any use is at your own risk.
    1.13   *
    1.14 - * Permission to use or copy this software for any purpose is hereby granted 
    1.15 + * Permission to use or copy this software for any purpose is hereby granted
    1.16   * without fee, provided the above notices are retained on all copies.
    1.17   * Permission to modify the code and to distribute modified code is granted,
    1.18   * provided the above notices are retained, and a notice that the code was
    1.19 @@ -14,106 +15,311 @@
    1.20   *
    1.21   */
    1.22  
    1.23 -#ifndef _STLP_CWCHAR_H
    1.24 -# define _STLP_CWCHAR_H
    1.25 +#ifndef _STLP_INTERNAL_CWCHAR
    1.26 +#define _STLP_INTERNAL_CWCHAR
    1.27  
    1.28 -#ifndef _STLP_NO_WCHAR_T
    1.29 -#ifdef __cplusplus
    1.30 -# include <cwchar>
    1.31 +#if defined (_STLP_WCE_EVC3)
    1.32 +#  ifndef _STLP_INTERNAL_MBSTATE_T
    1.33 +#    include <stl/_mbstate_t.h>
    1.34 +#  endif
    1.35  #else
    1.36 -# include <wchar.h>
    1.37 -#endif
    1.38 -#endif
    1.39 +#  if defined (__GNUC__) && !defined (__SYMBIAN32__)
    1.40 +#    include _STLP_NATIVE_CPP_C_HEADER(cstddef)
    1.41 +#  endif
    1.42  
    1.43 -# if defined (__MRC__) || defined (__SC__) || defined (__BORLANDC__) || defined(__FreeBSD__) || (defined (__GNUC__) && defined (__APPLE__) || defined( __Lynx__ )) || defined (_STLP_NO_WCHAR_T)
    1.44 +#  if !defined (_STLP_NO_CWCHAR) && defined (_STLP_USE_NEW_C_HEADERS)
    1.45 +#    include _STLP_NATIVE_CPP_C_HEADER(cwchar)
    1.46 +#    if defined (__OpenBSD__)
    1.47 +typedef _BSD_WINT_T_ wint_t;
    1.48 +#    endif /* __OpenBSD__ */
    1.49  
    1.50 -#ifdef __SYMBIAN32__
    1.51 -#  include <stddef.h>
    1.52 -#else
    1.53 -# include _STLP_NATIVE_C_HEADER(stddef.h)
    1.54 -#endif
    1.55 -#  if defined (__FreeBSD__) || defined (__Lynx__)
    1.56 -#   ifndef _WINT_T
    1.57 +#  elif defined (_STLP_NO_WCHAR_T) || defined (__MRC__) || (defined (__SC__) && !defined (__DMC__)) || \
    1.58 +       (defined (__BORLANDC__) && (__BORLANDC__ < 0x580)) || \
    1.59 +        defined (__OpenBSD__) || defined (__FreeBSD__) || \
    1.60 +       (defined (__GNUC__) && (defined (__APPLE__) || defined ( __Lynx__ )))
    1.61 +#    include _STLP_NATIVE_C_HEADER(stddef.h)
    1.62 +#    if defined (__Lynx__)
    1.63 +#      ifndef _WINT_T
    1.64  typedef long int wint_t;
    1.65 -#    define _WINT_T
    1.66 -#   endif /* _WINT_T */
    1.67 +#        define _WINT_T
    1.68 +#      endif /* _WINT_T */
    1.69 +#    endif
    1.70 +#    if defined(__OpenBSD__)
    1.71 +typedef _BSD_WINT_T_ wint_t;
    1.72 +#    endif /* __OpenBSD__ */
    1.73 +#  elif defined (__MWERKS__) && defined (N_PLAT_NLM)
    1.74 +#    include <wchar.h>
    1.75 +#  else
    1.76 +#    include _STLP_NATIVE_C_HEADER(wchar.h)
    1.77 +
    1.78 +#    if defined (__sun) && (defined (_XOPEN_SOURCE) || (_XOPEN_VERSION - 0 == 4))
    1.79 +extern wint_t   btowc();
    1.80 +extern int      fwprintf();
    1.81 +extern int      fwscanf();
    1.82 +extern int      fwide();
    1.83 +extern int      mbsinit();
    1.84 +extern size_t   mbrlen();
    1.85 +extern size_t   mbrtowc();
    1.86 +extern size_t   mbsrtowcs();
    1.87 +extern int      swprintf();
    1.88 +extern int      swscanf();
    1.89 +extern int      vfwprintf();
    1.90 +extern int      vwprintf();
    1.91 +extern int      vswprintf();
    1.92 +extern size_t   wcrtomb();
    1.93 +extern size_t   wcsrtombs();
    1.94 +extern wchar_t  *wcsstr();
    1.95 +extern int      wctob();
    1.96 +extern wchar_t  *wmemchr();
    1.97 +extern int      wmemcmp();
    1.98 +extern wchar_t  *wmemcpy();
    1.99 +extern wchar_t  *wmemmove();
   1.100 +extern wchar_t  *wmemset();
   1.101 +extern int      wprintf();
   1.102 +extern int      wscanf();
   1.103 +#    endif
   1.104  #  endif
   1.105 -# endif
   1.106  
   1.107 -# if defined ( _STLP_OWN_IOSTREAMS ) && defined (_STLP_NO_NATIVE_MBSTATE_T) && ! defined (_STLP_NO_MBSTATE_T) && ! defined (_MBSTATE_T) && ! defined (__mbstate_t_defined)
   1.108 -#  define _STLP_USE_OWN_MBSTATE_T
   1.109 -#  define _MBSTATE_T
   1.110 -# endif
   1.111 +#  if defined (__MSL__) && (__MSL__ <= 0x51FF)  /* dwa 2/28/99 - not yet implemented by MSL  */
   1.112 +#    define _STLP_WCHAR_MSL_EXCLUDE 1
   1.113 +namespace std {
   1.114 +  extern "C" size_t wcsftime(wchar_t * str, size_t max_size, const wchar_t * format_str, const struct tm * timeptr);
   1.115 +}
   1.116 +#    define _STLP_NO_MBSTATE_T 1
   1.117 +#  elif defined (__BORLANDC__)
   1.118 +#    if !defined (_STLP_USE_NO_IOSTREAMS)
   1.119 +#      define _STLP_NO_NATIVE_MBSTATE_T
   1.120 +#    endif
   1.121 +#    define _STLP_WCHAR_BORLAND_EXCLUDE 1
   1.122 +#  endif
   1.123  
   1.124 -# ifdef _STLP_USE_OWN_MBSTATE_T
   1.125 +#  ifndef _STLP_INTERNAL_MBSTATE_T
   1.126 +#    include <stl/_mbstate_t.h>
   1.127 +#  endif
   1.128  
   1.129 -#ifndef __SYMBIAN32__ //no more using the structure __stl_mbstate_t. usinfg _mb_state_t from _types.h.
   1.130 -// to be compatible across different SUN platforms
   1.131 -#ifdef __sun
   1.132 -# define __stl_mbstate_t __mbstate_t
   1.133 -#endif
   1.134 +#  if !defined (_STLP_NO_WCHAR_T)
   1.135 +#    ifndef WCHAR_MIN
   1.136 +#      define WCHAR_MIN 0
   1.137 +/* SUNpro has some bugs with casts. wchar_t is size of int there anyway. */
   1.138 +#      if defined (__SUNPRO_CC) || defined (__DJGPP)
   1.139 +#        define WCHAR_MAX (~0)
   1.140 +#      else
   1.141 +#        define WCHAR_MAX ((wchar_t)~0)
   1.142 +#      endif
   1.143 +#    endif
   1.144 +#    if defined (__GNUC__) && defined (__alpha__)
   1.145 +/* Definition of WCHAR_MIN and MAX are wrong for alpha platform
   1.146 + * as gcc consider wchar_t as an unsigned type. Static assertion are
   1.147 + * here to check that a future alpha SDK or a future gcc won't change the
   1.148 + * situation making this workaround useless.
   1.149 + */
   1.150 +_STLP_STATIC_ASSERT(((wchar_t)-1 > 0) && (WCHAR_MIN < 0))
   1.151 +#      undef WCHAR_MIN
   1.152 +#      define WCHAR_MIN 0
   1.153 +#      undef WCHAR_MAX
   1.154 +#      define WCHAR_MAX ((wchar_t)~0)
   1.155 +#    endif
   1.156 +#    if defined(__HP_aCC) && (__HP_aCC >= 60000)
   1.157 +/* Starting with B.11.31, HP-UX/ia64 provides C99-compliant definitions
   1.158 + * of WCHAR_MIN/MAX macros without having to define
   1.159 + * _INCLUDE_STDC__SOURCE_199901 macro (which aCC compiler does not
   1.160 + * predefine). Let STLport provide B.11.31 definitions on any version of
   1.161 + * HP-UX/ia64.
   1.162 + */
   1.163 +#      undef WCHAR_MIN
   1.164 +#      define WCHAR_MIN 0
   1.165 +#      undef WCHAR_MAX
   1.166 +#      define WCHAR_MAX UINT_MAX 
   1.167 +#    endif
   1.168 +#  endif
   1.169  
   1.170 -struct __stl_mbstate_t;
   1.171 +#  if defined (_STLP_IMPORT_VENDOR_CSTD)
   1.172  
   1.173 -# ifdef __cplusplus
   1.174 -struct __stl_mbstate_t { 
   1.175 -  __stl_mbstate_t( long __st = 0 ) { _M_state[0] = __st ; }
   1.176 -  __stl_mbstate_t& operator=(const long __st) {
   1.177 -    _M_state[0] = __st;              
   1.178 -    return *this;
   1.179 -  } 
   1.180 -  __stl_mbstate_t(const __stl_mbstate_t& __x) {_M_state[0]= __x._M_state[0]; }         
   1.181 -  __stl_mbstate_t& operator=(const __stl_mbstate_t& __x) {
   1.182 -    _M_state[0]= __x._M_state[0];              
   1.183 -    return *this;
   1.184 -  }
   1.185 -# if defined (__sun)
   1.186 -#  ifdef _LP64
   1.187 -  long _M_state[4];
   1.188 -#  else
   1.189 -  int _M_state[6];
   1.190 -#  endif
   1.191 -# else       
   1.192 -  long _M_state[1];
   1.193 -# endif
   1.194 -};          
   1.195 +#    if defined (__SUNPRO_CC) && !defined (_STLP_HAS_NO_NEW_C_HEADERS)
   1.196 +using _STLP_VENDOR_CSTD::wint_t;
   1.197 +#    endif
   1.198  
   1.199 -inline bool operator==(const __stl_mbstate_t& __x, const __stl_mbstate_t& __y) {
   1.200 -  return ( __x._M_state[0] == __y._M_state[0] );
   1.201 -}
   1.202 +_STLP_BEGIN_NAMESPACE
   1.203 +#    if defined (_STLP_NO_WCHAR_T)
   1.204 +typedef int wint_t;
   1.205 +#    else
   1.206 +// gcc 3.0 has a glitch : wint_t only sucked into the global namespace if _GLIBCPP_USE_WCHAR_T is defined
   1.207 +// __MWERKS__ has definition in wchar_t.h (MSL C++), but ones differ from definition
   1.208 +// in stdio.h; I prefer settings from last file.
   1.209 +#      if (defined (__GNUC__) && ! defined (_GLIBCPP_USE_WCHAR_T)) // || (defined(__MWERKS__) && defined(N_PLAT_NLM))
   1.210 +using ::wint_t;
   1.211 +#      else
   1.212 +using _STLP_VENDOR_CSTD::wint_t;
   1.213 +#      endif
   1.214 +#    endif
   1.215  
   1.216 -inline bool operator!=(const __stl_mbstate_t& __x, const __stl_mbstate_t& __y) {
   1.217 -  return ( __x._M_state[0] == __y._M_state[0] );
   1.218 -}
   1.219 -# endif
   1.220 +using _STLP_VENDOR_CSTD::size_t;
   1.221  
   1.222 +#    if !defined (_STLP_NO_NATIVE_MBSTATE_T) && !defined (_STLP_USE_OWN_MBSTATE_T)
   1.223 +using _STLP_VENDOR_MB_NAMESPACE::mbstate_t;
   1.224  
   1.225 -#endif //#if __SYMBIAN32__
   1.226 -_STLP_BEGIN_NAMESPACE
   1.227 -//typedef __mbstate_t __stl_mbstate_t;
   1.228 -//typedef __mbstate_t mbstate_t;
   1.229 +#      if !defined (_STLP_NO_CSTD_FUNCTION_IMPORTS) && !defined(_STLP_WCHAR_BORLAND_EXCLUDE) && \
   1.230 +         (!defined(__MSL__) || __MSL__ > 0x6001)
   1.231 +#        if defined (__MINGW32__) && ((__MINGW32_MAJOR_VERSION > 3) || ((__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION >= 8))) || \
   1.232 +          !(defined (__KCC) || defined (__GNUC__)) && !defined(_STLP_WCE_NET) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
   1.233 +using _STLP_VENDOR_MB_NAMESPACE::btowc;
   1.234 +#          if (!defined(__MSL__) || __MSL__ > 0x7001)
   1.235 +using _STLP_VENDOR_MB_NAMESPACE::mbsinit;
   1.236 +#          endif
   1.237 +#        endif
   1.238 +#        if defined (__MINGW32__) && ((__MINGW32_MAJOR_VERSION > 3) || ((__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION >= 8))) || \
   1.239 +           !defined (__GNUC__) && !defined(_STLP_WCE_NET) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
   1.240 +using _STLP_VENDOR_MB_NAMESPACE::mbrlen;
   1.241 +using _STLP_VENDOR_MB_NAMESPACE::mbrtowc;
   1.242 +using _STLP_VENDOR_MB_NAMESPACE::mbsrtowcs;
   1.243 +using _STLP_VENDOR_MB_NAMESPACE::wcrtomb;
   1.244 +using _STLP_VENDOR_MB_NAMESPACE::wcsrtombs;
   1.245 +#        endif
   1.246 +#      endif /* BORLAND && !__MSL__ || __MSL__ > 0x6001 */
   1.247  
   1.248 +#    endif /* _STLP_NO_NATIVE_MBSTATE_T */
   1.249 +
   1.250 +#    if !defined (_STLP_NO_NATIVE_WIDE_FUNCTIONS) && ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS)
   1.251 +
   1.252 +#      if !defined (_STLP_WCHAR_BORLAND_EXCLUDE) && ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
   1.253 +using _STLP_VENDOR_CSTD::fgetwc;
   1.254 +using _STLP_VENDOR_CSTD::fgetws;
   1.255 +using _STLP_VENDOR_CSTD::fputwc;
   1.256 +using _STLP_VENDOR_CSTD::fputws;
   1.257 +#      endif
   1.258 +
   1.259 +#      if !(defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_BORLAND_EXCLUDE) || \
   1.260 +            defined(_STLP_WCHAR_HPACC_EXCLUDE) || (defined(__MWERKS__) && defined(N_PLAT_NLM)))
   1.261 +#        if !defined (__DECCXX)
   1.262 +using _STLP_VENDOR_CSTD::fwide;
   1.263 +#        endif
   1.264 +using _STLP_VENDOR_CSTD::fwprintf;
   1.265 +using _STLP_VENDOR_CSTD::fwscanf;
   1.266 +using _STLP_VENDOR_CSTD::getwchar;
   1.267 +#      endif
   1.268 +
   1.269 +#      if !defined(_STLP_WCHAR_BORLAND_EXCLUDE) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
   1.270 +#        ifndef _STLP_WCE_NET
   1.271 +using _STLP_VENDOR_CSTD::getwc;
   1.272 +#        endif
   1.273 +using _STLP_VENDOR_CSTD::ungetwc;
   1.274 +#        ifndef _STLP_WCE_NET
   1.275 +using _STLP_VENDOR_CSTD::putwc;
   1.276 +#        endif
   1.277 +using _STLP_VENDOR_CSTD::putwchar;
   1.278 +#      endif
   1.279 +
   1.280 +#      if !(defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_BORLAND_EXCLUDE) || \
   1.281 +            defined (_STLP_WCHAR_HPACC_EXCLUDE) || (defined (__MWERKS__) && defined (N_PLAT_NLM)))
   1.282 +#        if defined (_STLP_MSVC_LIB) && (_STLP_MSVC_LIB <= 1300) || \
   1.283 +            (defined (__MINGW32__) && !(defined (__SYMBIAN32__) && defined (__GCCXML__)))
   1.284 +#          undef swprintf
   1.285 +#          define swprintf _snwprintf
   1.286 +#          undef vswprintf
   1.287 +#          define vswprintf _vsnwprintf
   1.288 +using ::swprintf;
   1.289 +using ::vswprintf;
   1.290 +#        else
   1.291 +using _STLP_VENDOR_CSTD::swprintf;
   1.292 +using _STLP_VENDOR_CSTD::vswprintf;
   1.293 +#        endif
   1.294 +using _STLP_VENDOR_CSTD::swscanf;
   1.295 +using _STLP_VENDOR_CSTD::vfwprintf;
   1.296 +using _STLP_VENDOR_CSTD::vwprintf;
   1.297 +
   1.298 +#        if (!defined(__MSL__) || __MSL__ > 0x7001 ) && !defined(_STLP_WCE_NET) && \
   1.299 +             !defined(_STLP_USE_UCLIBC) /* at least in uClibc 0.9.26 */
   1.300 +
   1.301 +using _STLP_VENDOR_CSTD::wcsftime;
   1.302 +#        endif
   1.303 +using _STLP_VENDOR_CSTD::wcstok;
   1.304 +
   1.305 +#      endif
   1.306 +
   1.307 +#      if !(defined(__MWERKS__) && defined(N_PLAT_NLM))
   1.308 +#        if !defined (_STLP_WCE_NET)
   1.309 +using _STLP_VENDOR_CSTD::wcscoll;
   1.310 +using _STLP_VENDOR_CSTD::wcsxfrm;
   1.311 +#        endif
   1.312 +using _STLP_VENDOR_CSTD::wcscat;
   1.313 +using _STLP_VENDOR_CSTD::wcsrchr;
   1.314 +using _STLP_VENDOR_CSTD::wcscmp;
   1.315 +
   1.316 +using _STLP_VENDOR_CSTD::wcscpy;
   1.317 +using _STLP_VENDOR_CSTD::wcscspn;
   1.318 +
   1.319 +using _STLP_VENDOR_CSTD::wcslen;
   1.320 +using _STLP_VENDOR_CSTD::wcsncat;
   1.321 +using _STLP_VENDOR_CSTD::wcsncmp;
   1.322 +using _STLP_VENDOR_CSTD::wcsncpy;
   1.323 +using _STLP_VENDOR_CSTD::wcspbrk;
   1.324 +using _STLP_VENDOR_CSTD::wcschr;
   1.325 +
   1.326 +using _STLP_VENDOR_CSTD::wcsspn;
   1.327 +#      endif
   1.328 +
   1.329 +#      if !defined (_STLP_WCHAR_BORLAND_EXCLUDE) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
   1.330 +using _STLP_VENDOR_CSTD::wcstod;
   1.331 +using _STLP_VENDOR_CSTD::wcstol;
   1.332 +#      endif
   1.333 +
   1.334 +#      if !(defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_HPACC_EXCLUDE) || \
   1.335 +            (defined (__MWERKS__) && defined (N_PLAT_NLM)))
   1.336 +using _STLP_VENDOR_CSTD::wcsstr;
   1.337 +using _STLP_VENDOR_CSTD::wmemchr;
   1.338 +
   1.339 +#        if !defined (_STLP_WCHAR_BORLAND_EXCLUDE)
   1.340 +#            if !defined (_STLP_WCE_NET)
   1.341 +using _STLP_VENDOR_CSTD::wctob;
   1.342 +#            endif
   1.343 +#          if !defined (__DMC__)
   1.344 +using _STLP_VENDOR_CSTD::wmemcmp;
   1.345 +using _STLP_VENDOR_CSTD::wmemmove;
   1.346 +#          endif
   1.347 +using _STLP_VENDOR_CSTD::wprintf;
   1.348 +using _STLP_VENDOR_CSTD::wscanf;
   1.349 +#        endif
   1.350 +
   1.351 +#        if defined (__BORLANDC__)
   1.352 +inline wchar_t* _STLP_wmemcpy(wchar_t* __wdst, const wchar_t* __wsrc, size_t __n)
   1.353 +{ return __STATIC_CAST(wchar_t*, _STLP_VENDOR_CSTD::wmemcpy(__wdst, __wsrc, __n)); }
   1.354 +inline wchar_t* _STLP_wmemset(wchar_t* __wdst, wchar_t __wc, size_t __n)
   1.355 +{ return __STATIC_CAST(wchar_t*, _STLP_VENDOR_CSTD::memset(__wdst, __wc, __n)); }
   1.356 +#          undef wmemcpy
   1.357 +#          undef wmemset
   1.358 +inline wchar_t* wmemcpy(wchar_t* __wdst, const wchar_t* __wsrc, size_t __n)
   1.359 +{ return _STLP_wmemcpy(__wdst, __wsrc, __n); }
   1.360 +inline wchar_t* wmemset(wchar_t* __wdst, wchar_t __wc, size_t __n)
   1.361 +{ return _STLP_wmemset(__wdst, __wc, __n); }
   1.362 +#        elif defined (__DMC__)
   1.363 +inline wchar_t* wmemcpy(wchar_t* __RESTRICT __wdst, const wchar_t* __RESTRICT __wsrc, size_t __n)
   1.364 +{ return __STATIC_CAST(wchar_t*, memcpy(__wdst, __wsrc, __n * sizeof(wchar_t))); }
   1.365 +inline wchar_t* wmemmove(wchar_t* __RESTRICT __wdst, const wchar_t * __RESTRICT __wc, size_t __n)
   1.366 +{ return __STATIC_CAST(wchar_t*, memmove(__wdst, __wc, __n * sizeof(wchar_t))); }
   1.367 +inline wchar_t* wmemset(wchar_t* __wdst, wchar_t __wc, size_t __n)
   1.368 +{ for (size_t i = 0; i < __n; i++) __wdst[i] = __wc; return __wdst; }
   1.369 +#        else
   1.370 +using _STLP_VENDOR_CSTD::wmemcpy;
   1.371 +using _STLP_VENDOR_CSTD::wmemset;
   1.372 +#        endif
   1.373 +#      endif
   1.374 +
   1.375 +#    elif defined (__MWERKS__) && defined (N_PLAT_NLM) /* _STLP_NO_NATIVE_WIDE_FUNCTIONS */
   1.376 +using _STLP_VENDOR_CSTD::wcslen;
   1.377 +using _STLP_VENDOR_CSTD::wcscmp;
   1.378 +using _STLP_VENDOR_CSTD::wcscpy;
   1.379 +using _STLP_VENDOR_CSTD::wcsstr;
   1.380 +using _STLP_VENDOR_CSTD::wcschr;
   1.381 +using _STLP_VENDOR_CSTD::wcsrchr;
   1.382 +using _STLP_VENDOR_CSTD::wcspbrk;
   1.383 +#    endif /* _STLP_NO_NATIVE_WIDE_FUNCTIONS */
   1.384  _STLP_END_NAMESPACE
   1.385  
   1.386 -# endif /* _STLP_USE_OWN_MBSTATE_T */
   1.387 +#  endif /* _STLP_IMPORT_VENDOR_CSTD */
   1.388  
   1.389 -#if !defined (_STLP_NO_WCHAR_T)
   1.390 -# ifndef WCHAR_MIN
   1.391 -#  define WCHAR_MIN 0
   1.392 -// SUNpro has some bugs with casts. wchar_t is size of int there anyway.
   1.393 -#  if defined (__SUNPRO_CC) || defined (__DJGPP)
   1.394 -#   define WCHAR_MAX (~0)
   1.395 -#  else
   1.396 -#   define WCHAR_MAX ((wchar_t)~0)
   1.397 -#  endif
   1.398 -# endif
   1.399 -#endif
   1.400 +#  undef _STLP_WCHAR_SUNPRO_EXCLUDE
   1.401 +#  undef _STLP_WCHAR_MSL_EXCLUDE
   1.402  
   1.403 -# if defined  (_STLP_IMPORT_VENDOR_CSTD) && ! defined (_STLP_VENDOR_GLOBAL_CSTD)
   1.404 -_STLP_BEGIN_NAMESPACE  
   1.405 -using namespace _STLP_VENDOR_CSTD;
   1.406 -_STLP_END_NAMESPACE
   1.407 -#endif /* _STLP_IMPORT_VENDOR_CSTD */
   1.408 +#  endif /* !defined(_STLP_WCE_EVC3) */
   1.409  
   1.410 -#endif /* _STLP_CWCHAR_H */
   1.411 -
   1.412 +#endif /* _STLP_INTERNAL_CWCHAR */