williamr@2
|
1 |
/*
|
williamr@4
|
2 |
* Portions Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
|
williamr@4
|
3 |
*
|
williamr@2
|
4 |
* Copyright (c) 1999
|
williamr@2
|
5 |
* Boris Fomitchev
|
williamr@2
|
6 |
*
|
williamr@2
|
7 |
* This material is provided "as is", with absolutely no warranty expressed
|
williamr@2
|
8 |
* or implied. Any use is at your own risk.
|
williamr@2
|
9 |
*
|
williamr@4
|
10 |
* Permission to use or copy this software for any purpose is hereby granted
|
williamr@2
|
11 |
* without fee, provided the above notices are retained on all copies.
|
williamr@2
|
12 |
* Permission to modify the code and to distribute modified code is granted,
|
williamr@2
|
13 |
* provided the above notices are retained, and a notice that the code was
|
williamr@2
|
14 |
* modified is included with the above copyright notice.
|
williamr@2
|
15 |
*
|
williamr@2
|
16 |
*/
|
williamr@2
|
17 |
|
williamr@4
|
18 |
#ifndef _STLP_INTERNAL_CWCHAR
|
williamr@4
|
19 |
#define _STLP_INTERNAL_CWCHAR
|
williamr@2
|
20 |
|
williamr@4
|
21 |
#if defined (_STLP_WCE_EVC3)
|
williamr@4
|
22 |
# ifndef _STLP_INTERNAL_MBSTATE_T
|
williamr@4
|
23 |
# include <stl/_mbstate_t.h>
|
williamr@4
|
24 |
# endif
|
williamr@2
|
25 |
#else
|
williamr@4
|
26 |
# if defined (__GNUC__) && !defined (__SYMBIAN32__)
|
williamr@4
|
27 |
# include _STLP_NATIVE_CPP_C_HEADER(cstddef)
|
williamr@4
|
28 |
# endif
|
williamr@2
|
29 |
|
williamr@4
|
30 |
# if !defined (_STLP_NO_CWCHAR) && defined (_STLP_USE_NEW_C_HEADERS)
|
williamr@4
|
31 |
# include _STLP_NATIVE_CPP_C_HEADER(cwchar)
|
williamr@4
|
32 |
# if defined (__OpenBSD__)
|
williamr@4
|
33 |
typedef _BSD_WINT_T_ wint_t;
|
williamr@4
|
34 |
# endif /* __OpenBSD__ */
|
williamr@2
|
35 |
|
williamr@4
|
36 |
# elif defined (_STLP_NO_WCHAR_T) || defined (__MRC__) || (defined (__SC__) && !defined (__DMC__)) || \
|
williamr@4
|
37 |
(defined (__BORLANDC__) && (__BORLANDC__ < 0x580)) || \
|
williamr@4
|
38 |
defined (__OpenBSD__) || defined (__FreeBSD__) || \
|
williamr@4
|
39 |
(defined (__GNUC__) && (defined (__APPLE__) || defined ( __Lynx__ )))
|
williamr@4
|
40 |
# include _STLP_NATIVE_C_HEADER(stddef.h)
|
williamr@4
|
41 |
# if defined (__Lynx__)
|
williamr@4
|
42 |
# ifndef _WINT_T
|
williamr@2
|
43 |
typedef long int wint_t;
|
williamr@4
|
44 |
# define _WINT_T
|
williamr@4
|
45 |
# endif /* _WINT_T */
|
williamr@4
|
46 |
# endif
|
williamr@4
|
47 |
# if defined(__OpenBSD__)
|
williamr@4
|
48 |
typedef _BSD_WINT_T_ wint_t;
|
williamr@4
|
49 |
# endif /* __OpenBSD__ */
|
williamr@4
|
50 |
# elif defined (__MWERKS__) && defined (N_PLAT_NLM)
|
williamr@4
|
51 |
# include <wchar.h>
|
williamr@4
|
52 |
# else
|
williamr@4
|
53 |
# include _STLP_NATIVE_C_HEADER(wchar.h)
|
williamr@4
|
54 |
|
williamr@4
|
55 |
# if defined (__sun) && (defined (_XOPEN_SOURCE) || (_XOPEN_VERSION - 0 == 4))
|
williamr@4
|
56 |
extern wint_t btowc();
|
williamr@4
|
57 |
extern int fwprintf();
|
williamr@4
|
58 |
extern int fwscanf();
|
williamr@4
|
59 |
extern int fwide();
|
williamr@4
|
60 |
extern int mbsinit();
|
williamr@4
|
61 |
extern size_t mbrlen();
|
williamr@4
|
62 |
extern size_t mbrtowc();
|
williamr@4
|
63 |
extern size_t mbsrtowcs();
|
williamr@4
|
64 |
extern int swprintf();
|
williamr@4
|
65 |
extern int swscanf();
|
williamr@4
|
66 |
extern int vfwprintf();
|
williamr@4
|
67 |
extern int vwprintf();
|
williamr@4
|
68 |
extern int vswprintf();
|
williamr@4
|
69 |
extern size_t wcrtomb();
|
williamr@4
|
70 |
extern size_t wcsrtombs();
|
williamr@4
|
71 |
extern wchar_t *wcsstr();
|
williamr@4
|
72 |
extern int wctob();
|
williamr@4
|
73 |
extern wchar_t *wmemchr();
|
williamr@4
|
74 |
extern int wmemcmp();
|
williamr@4
|
75 |
extern wchar_t *wmemcpy();
|
williamr@4
|
76 |
extern wchar_t *wmemmove();
|
williamr@4
|
77 |
extern wchar_t *wmemset();
|
williamr@4
|
78 |
extern int wprintf();
|
williamr@4
|
79 |
extern int wscanf();
|
williamr@4
|
80 |
# endif
|
williamr@2
|
81 |
# endif
|
williamr@2
|
82 |
|
williamr@4
|
83 |
# if defined (__MSL__) && (__MSL__ <= 0x51FF) /* dwa 2/28/99 - not yet implemented by MSL */
|
williamr@4
|
84 |
# define _STLP_WCHAR_MSL_EXCLUDE 1
|
williamr@4
|
85 |
namespace std {
|
williamr@4
|
86 |
extern "C" size_t wcsftime(wchar_t * str, size_t max_size, const wchar_t * format_str, const struct tm * timeptr);
|
williamr@4
|
87 |
}
|
williamr@4
|
88 |
# define _STLP_NO_MBSTATE_T 1
|
williamr@4
|
89 |
# elif defined (__BORLANDC__)
|
williamr@4
|
90 |
# if !defined (_STLP_USE_NO_IOSTREAMS)
|
williamr@4
|
91 |
# define _STLP_NO_NATIVE_MBSTATE_T
|
williamr@4
|
92 |
# endif
|
williamr@4
|
93 |
# define _STLP_WCHAR_BORLAND_EXCLUDE 1
|
williamr@4
|
94 |
# endif
|
williamr@2
|
95 |
|
williamr@4
|
96 |
# ifndef _STLP_INTERNAL_MBSTATE_T
|
williamr@4
|
97 |
# include <stl/_mbstate_t.h>
|
williamr@4
|
98 |
# endif
|
williamr@2
|
99 |
|
williamr@4
|
100 |
# if !defined (_STLP_NO_WCHAR_T)
|
williamr@4
|
101 |
# ifndef WCHAR_MIN
|
williamr@4
|
102 |
# define WCHAR_MIN 0
|
williamr@4
|
103 |
/* SUNpro has some bugs with casts. wchar_t is size of int there anyway. */
|
williamr@4
|
104 |
# if defined (__SUNPRO_CC) || defined (__DJGPP)
|
williamr@4
|
105 |
# define WCHAR_MAX (~0)
|
williamr@4
|
106 |
# else
|
williamr@4
|
107 |
# define WCHAR_MAX ((wchar_t)~0)
|
williamr@4
|
108 |
# endif
|
williamr@4
|
109 |
# endif
|
williamr@4
|
110 |
# if defined (__GNUC__) && defined (__alpha__)
|
williamr@4
|
111 |
/* Definition of WCHAR_MIN and MAX are wrong for alpha platform
|
williamr@4
|
112 |
* as gcc consider wchar_t as an unsigned type. Static assertion are
|
williamr@4
|
113 |
* here to check that a future alpha SDK or a future gcc won't change the
|
williamr@4
|
114 |
* situation making this workaround useless.
|
williamr@4
|
115 |
*/
|
williamr@4
|
116 |
_STLP_STATIC_ASSERT(((wchar_t)-1 > 0) && (WCHAR_MIN < 0))
|
williamr@4
|
117 |
# undef WCHAR_MIN
|
williamr@4
|
118 |
# define WCHAR_MIN 0
|
williamr@4
|
119 |
# undef WCHAR_MAX
|
williamr@4
|
120 |
# define WCHAR_MAX ((wchar_t)~0)
|
williamr@4
|
121 |
# endif
|
williamr@4
|
122 |
# if defined(__HP_aCC) && (__HP_aCC >= 60000)
|
williamr@4
|
123 |
/* Starting with B.11.31, HP-UX/ia64 provides C99-compliant definitions
|
williamr@4
|
124 |
* of WCHAR_MIN/MAX macros without having to define
|
williamr@4
|
125 |
* _INCLUDE_STDC__SOURCE_199901 macro (which aCC compiler does not
|
williamr@4
|
126 |
* predefine). Let STLport provide B.11.31 definitions on any version of
|
williamr@4
|
127 |
* HP-UX/ia64.
|
williamr@4
|
128 |
*/
|
williamr@4
|
129 |
# undef WCHAR_MIN
|
williamr@4
|
130 |
# define WCHAR_MIN 0
|
williamr@4
|
131 |
# undef WCHAR_MAX
|
williamr@4
|
132 |
# define WCHAR_MAX UINT_MAX
|
williamr@4
|
133 |
# endif
|
williamr@4
|
134 |
# endif
|
williamr@2
|
135 |
|
williamr@4
|
136 |
# if defined (_STLP_IMPORT_VENDOR_CSTD)
|
williamr@2
|
137 |
|
williamr@4
|
138 |
# if defined (__SUNPRO_CC) && !defined (_STLP_HAS_NO_NEW_C_HEADERS)
|
williamr@4
|
139 |
using _STLP_VENDOR_CSTD::wint_t;
|
williamr@4
|
140 |
# endif
|
williamr@2
|
141 |
|
williamr@4
|
142 |
_STLP_BEGIN_NAMESPACE
|
williamr@4
|
143 |
# if defined (_STLP_NO_WCHAR_T)
|
williamr@4
|
144 |
typedef int wint_t;
|
williamr@4
|
145 |
# else
|
williamr@4
|
146 |
// gcc 3.0 has a glitch : wint_t only sucked into the global namespace if _GLIBCPP_USE_WCHAR_T is defined
|
williamr@4
|
147 |
// __MWERKS__ has definition in wchar_t.h (MSL C++), but ones differ from definition
|
williamr@4
|
148 |
// in stdio.h; I prefer settings from last file.
|
williamr@4
|
149 |
# if (defined (__GNUC__) && ! defined (_GLIBCPP_USE_WCHAR_T)) // || (defined(__MWERKS__) && defined(N_PLAT_NLM))
|
williamr@4
|
150 |
using ::wint_t;
|
williamr@4
|
151 |
# else
|
williamr@4
|
152 |
using _STLP_VENDOR_CSTD::wint_t;
|
williamr@4
|
153 |
# endif
|
williamr@4
|
154 |
# endif
|
williamr@2
|
155 |
|
williamr@4
|
156 |
using _STLP_VENDOR_CSTD::size_t;
|
williamr@2
|
157 |
|
williamr@4
|
158 |
# if !defined (_STLP_NO_NATIVE_MBSTATE_T) && !defined (_STLP_USE_OWN_MBSTATE_T)
|
williamr@4
|
159 |
using _STLP_VENDOR_MB_NAMESPACE::mbstate_t;
|
williamr@2
|
160 |
|
williamr@4
|
161 |
# if !defined (_STLP_NO_CSTD_FUNCTION_IMPORTS) && !defined(_STLP_WCHAR_BORLAND_EXCLUDE) && \
|
williamr@4
|
162 |
(!defined(__MSL__) || __MSL__ > 0x6001)
|
williamr@4
|
163 |
# if defined (__MINGW32__) && ((__MINGW32_MAJOR_VERSION > 3) || ((__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION >= 8))) || \
|
williamr@4
|
164 |
!(defined (__KCC) || defined (__GNUC__)) && !defined(_STLP_WCE_NET) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
|
williamr@4
|
165 |
using _STLP_VENDOR_MB_NAMESPACE::btowc;
|
williamr@4
|
166 |
# if (!defined(__MSL__) || __MSL__ > 0x7001)
|
williamr@4
|
167 |
using _STLP_VENDOR_MB_NAMESPACE::mbsinit;
|
williamr@4
|
168 |
# endif
|
williamr@4
|
169 |
# endif
|
williamr@4
|
170 |
# if defined (__MINGW32__) && ((__MINGW32_MAJOR_VERSION > 3) || ((__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION >= 8))) || \
|
williamr@4
|
171 |
!defined (__GNUC__) && !defined(_STLP_WCE_NET) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
|
williamr@4
|
172 |
using _STLP_VENDOR_MB_NAMESPACE::mbrlen;
|
williamr@4
|
173 |
using _STLP_VENDOR_MB_NAMESPACE::mbrtowc;
|
williamr@4
|
174 |
using _STLP_VENDOR_MB_NAMESPACE::mbsrtowcs;
|
williamr@4
|
175 |
using _STLP_VENDOR_MB_NAMESPACE::wcrtomb;
|
williamr@4
|
176 |
using _STLP_VENDOR_MB_NAMESPACE::wcsrtombs;
|
williamr@4
|
177 |
# endif
|
williamr@4
|
178 |
# endif /* BORLAND && !__MSL__ || __MSL__ > 0x6001 */
|
williamr@2
|
179 |
|
williamr@4
|
180 |
# endif /* _STLP_NO_NATIVE_MBSTATE_T */
|
williamr@4
|
181 |
|
williamr@4
|
182 |
# if !defined (_STLP_NO_NATIVE_WIDE_FUNCTIONS) && ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS)
|
williamr@4
|
183 |
|
williamr@4
|
184 |
# if !defined (_STLP_WCHAR_BORLAND_EXCLUDE) && ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
|
williamr@4
|
185 |
using _STLP_VENDOR_CSTD::fgetwc;
|
williamr@4
|
186 |
using _STLP_VENDOR_CSTD::fgetws;
|
williamr@4
|
187 |
using _STLP_VENDOR_CSTD::fputwc;
|
williamr@4
|
188 |
using _STLP_VENDOR_CSTD::fputws;
|
williamr@4
|
189 |
# endif
|
williamr@4
|
190 |
|
williamr@4
|
191 |
# if !(defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_BORLAND_EXCLUDE) || \
|
williamr@4
|
192 |
defined(_STLP_WCHAR_HPACC_EXCLUDE) || (defined(__MWERKS__) && defined(N_PLAT_NLM)))
|
williamr@4
|
193 |
# if !defined (__DECCXX)
|
williamr@4
|
194 |
using _STLP_VENDOR_CSTD::fwide;
|
williamr@4
|
195 |
# endif
|
williamr@4
|
196 |
using _STLP_VENDOR_CSTD::fwprintf;
|
williamr@4
|
197 |
using _STLP_VENDOR_CSTD::fwscanf;
|
williamr@4
|
198 |
using _STLP_VENDOR_CSTD::getwchar;
|
williamr@4
|
199 |
# endif
|
williamr@4
|
200 |
|
williamr@4
|
201 |
# if !defined(_STLP_WCHAR_BORLAND_EXCLUDE) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
|
williamr@4
|
202 |
# ifndef _STLP_WCE_NET
|
williamr@4
|
203 |
using _STLP_VENDOR_CSTD::getwc;
|
williamr@4
|
204 |
# endif
|
williamr@4
|
205 |
using _STLP_VENDOR_CSTD::ungetwc;
|
williamr@4
|
206 |
# ifndef _STLP_WCE_NET
|
williamr@4
|
207 |
using _STLP_VENDOR_CSTD::putwc;
|
williamr@4
|
208 |
# endif
|
williamr@4
|
209 |
using _STLP_VENDOR_CSTD::putwchar;
|
williamr@4
|
210 |
# endif
|
williamr@4
|
211 |
|
williamr@4
|
212 |
# if !(defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_BORLAND_EXCLUDE) || \
|
williamr@4
|
213 |
defined (_STLP_WCHAR_HPACC_EXCLUDE) || (defined (__MWERKS__) && defined (N_PLAT_NLM)))
|
williamr@4
|
214 |
# if defined (_STLP_MSVC_LIB) && (_STLP_MSVC_LIB <= 1300) || \
|
williamr@4
|
215 |
(defined (__MINGW32__) && !(defined (__SYMBIAN32__) && defined (__GCCXML__)))
|
williamr@4
|
216 |
# undef swprintf
|
williamr@4
|
217 |
# define swprintf _snwprintf
|
williamr@4
|
218 |
# undef vswprintf
|
williamr@4
|
219 |
# define vswprintf _vsnwprintf
|
williamr@4
|
220 |
using ::swprintf;
|
williamr@4
|
221 |
using ::vswprintf;
|
williamr@4
|
222 |
# else
|
williamr@4
|
223 |
using _STLP_VENDOR_CSTD::swprintf;
|
williamr@4
|
224 |
using _STLP_VENDOR_CSTD::vswprintf;
|
williamr@4
|
225 |
# endif
|
williamr@4
|
226 |
using _STLP_VENDOR_CSTD::swscanf;
|
williamr@4
|
227 |
using _STLP_VENDOR_CSTD::vfwprintf;
|
williamr@4
|
228 |
using _STLP_VENDOR_CSTD::vwprintf;
|
williamr@4
|
229 |
|
williamr@4
|
230 |
# if (!defined(__MSL__) || __MSL__ > 0x7001 ) && !defined(_STLP_WCE_NET) && \
|
williamr@4
|
231 |
!defined(_STLP_USE_UCLIBC) /* at least in uClibc 0.9.26 */
|
williamr@4
|
232 |
|
williamr@4
|
233 |
using _STLP_VENDOR_CSTD::wcsftime;
|
williamr@4
|
234 |
# endif
|
williamr@4
|
235 |
using _STLP_VENDOR_CSTD::wcstok;
|
williamr@4
|
236 |
|
williamr@4
|
237 |
# endif
|
williamr@4
|
238 |
|
williamr@4
|
239 |
# if !(defined(__MWERKS__) && defined(N_PLAT_NLM))
|
williamr@4
|
240 |
# if !defined (_STLP_WCE_NET)
|
williamr@4
|
241 |
using _STLP_VENDOR_CSTD::wcscoll;
|
williamr@4
|
242 |
using _STLP_VENDOR_CSTD::wcsxfrm;
|
williamr@4
|
243 |
# endif
|
williamr@4
|
244 |
using _STLP_VENDOR_CSTD::wcscat;
|
williamr@4
|
245 |
using _STLP_VENDOR_CSTD::wcsrchr;
|
williamr@4
|
246 |
using _STLP_VENDOR_CSTD::wcscmp;
|
williamr@4
|
247 |
|
williamr@4
|
248 |
using _STLP_VENDOR_CSTD::wcscpy;
|
williamr@4
|
249 |
using _STLP_VENDOR_CSTD::wcscspn;
|
williamr@4
|
250 |
|
williamr@4
|
251 |
using _STLP_VENDOR_CSTD::wcslen;
|
williamr@4
|
252 |
using _STLP_VENDOR_CSTD::wcsncat;
|
williamr@4
|
253 |
using _STLP_VENDOR_CSTD::wcsncmp;
|
williamr@4
|
254 |
using _STLP_VENDOR_CSTD::wcsncpy;
|
williamr@4
|
255 |
using _STLP_VENDOR_CSTD::wcspbrk;
|
williamr@4
|
256 |
using _STLP_VENDOR_CSTD::wcschr;
|
williamr@4
|
257 |
|
williamr@4
|
258 |
using _STLP_VENDOR_CSTD::wcsspn;
|
williamr@4
|
259 |
# endif
|
williamr@4
|
260 |
|
williamr@4
|
261 |
# if !defined (_STLP_WCHAR_BORLAND_EXCLUDE) && !(defined(__MWERKS__) && defined(N_PLAT_NLM))
|
williamr@4
|
262 |
using _STLP_VENDOR_CSTD::wcstod;
|
williamr@4
|
263 |
using _STLP_VENDOR_CSTD::wcstol;
|
williamr@4
|
264 |
# endif
|
williamr@4
|
265 |
|
williamr@4
|
266 |
# if !(defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_HPACC_EXCLUDE) || \
|
williamr@4
|
267 |
(defined (__MWERKS__) && defined (N_PLAT_NLM)))
|
williamr@4
|
268 |
using _STLP_VENDOR_CSTD::wcsstr;
|
williamr@4
|
269 |
using _STLP_VENDOR_CSTD::wmemchr;
|
williamr@4
|
270 |
|
williamr@4
|
271 |
# if !defined (_STLP_WCHAR_BORLAND_EXCLUDE)
|
williamr@4
|
272 |
# if !defined (_STLP_WCE_NET)
|
williamr@4
|
273 |
using _STLP_VENDOR_CSTD::wctob;
|
williamr@4
|
274 |
# endif
|
williamr@4
|
275 |
# if !defined (__DMC__)
|
williamr@4
|
276 |
using _STLP_VENDOR_CSTD::wmemcmp;
|
williamr@4
|
277 |
using _STLP_VENDOR_CSTD::wmemmove;
|
williamr@4
|
278 |
# endif
|
williamr@4
|
279 |
using _STLP_VENDOR_CSTD::wprintf;
|
williamr@4
|
280 |
using _STLP_VENDOR_CSTD::wscanf;
|
williamr@4
|
281 |
# endif
|
williamr@4
|
282 |
|
williamr@4
|
283 |
# if defined (__BORLANDC__)
|
williamr@4
|
284 |
inline wchar_t* _STLP_wmemcpy(wchar_t* __wdst, const wchar_t* __wsrc, size_t __n)
|
williamr@4
|
285 |
{ return __STATIC_CAST(wchar_t*, _STLP_VENDOR_CSTD::wmemcpy(__wdst, __wsrc, __n)); }
|
williamr@4
|
286 |
inline wchar_t* _STLP_wmemset(wchar_t* __wdst, wchar_t __wc, size_t __n)
|
williamr@4
|
287 |
{ return __STATIC_CAST(wchar_t*, _STLP_VENDOR_CSTD::memset(__wdst, __wc, __n)); }
|
williamr@4
|
288 |
# undef wmemcpy
|
williamr@4
|
289 |
# undef wmemset
|
williamr@4
|
290 |
inline wchar_t* wmemcpy(wchar_t* __wdst, const wchar_t* __wsrc, size_t __n)
|
williamr@4
|
291 |
{ return _STLP_wmemcpy(__wdst, __wsrc, __n); }
|
williamr@4
|
292 |
inline wchar_t* wmemset(wchar_t* __wdst, wchar_t __wc, size_t __n)
|
williamr@4
|
293 |
{ return _STLP_wmemset(__wdst, __wc, __n); }
|
williamr@4
|
294 |
# elif defined (__DMC__)
|
williamr@4
|
295 |
inline wchar_t* wmemcpy(wchar_t* __RESTRICT __wdst, const wchar_t* __RESTRICT __wsrc, size_t __n)
|
williamr@4
|
296 |
{ return __STATIC_CAST(wchar_t*, memcpy(__wdst, __wsrc, __n * sizeof(wchar_t))); }
|
williamr@4
|
297 |
inline wchar_t* wmemmove(wchar_t* __RESTRICT __wdst, const wchar_t * __RESTRICT __wc, size_t __n)
|
williamr@4
|
298 |
{ return __STATIC_CAST(wchar_t*, memmove(__wdst, __wc, __n * sizeof(wchar_t))); }
|
williamr@4
|
299 |
inline wchar_t* wmemset(wchar_t* __wdst, wchar_t __wc, size_t __n)
|
williamr@4
|
300 |
{ for (size_t i = 0; i < __n; i++) __wdst[i] = __wc; return __wdst; }
|
williamr@4
|
301 |
# else
|
williamr@4
|
302 |
using _STLP_VENDOR_CSTD::wmemcpy;
|
williamr@4
|
303 |
using _STLP_VENDOR_CSTD::wmemset;
|
williamr@4
|
304 |
# endif
|
williamr@4
|
305 |
# endif
|
williamr@4
|
306 |
|
williamr@4
|
307 |
# elif defined (__MWERKS__) && defined (N_PLAT_NLM) /* _STLP_NO_NATIVE_WIDE_FUNCTIONS */
|
williamr@4
|
308 |
using _STLP_VENDOR_CSTD::wcslen;
|
williamr@4
|
309 |
using _STLP_VENDOR_CSTD::wcscmp;
|
williamr@4
|
310 |
using _STLP_VENDOR_CSTD::wcscpy;
|
williamr@4
|
311 |
using _STLP_VENDOR_CSTD::wcsstr;
|
williamr@4
|
312 |
using _STLP_VENDOR_CSTD::wcschr;
|
williamr@4
|
313 |
using _STLP_VENDOR_CSTD::wcsrchr;
|
williamr@4
|
314 |
using _STLP_VENDOR_CSTD::wcspbrk;
|
williamr@4
|
315 |
# endif /* _STLP_NO_NATIVE_WIDE_FUNCTIONS */
|
williamr@2
|
316 |
_STLP_END_NAMESPACE
|
williamr@2
|
317 |
|
williamr@4
|
318 |
# endif /* _STLP_IMPORT_VENDOR_CSTD */
|
williamr@2
|
319 |
|
williamr@4
|
320 |
# undef _STLP_WCHAR_SUNPRO_EXCLUDE
|
williamr@4
|
321 |
# undef _STLP_WCHAR_MSL_EXCLUDE
|
williamr@2
|
322 |
|
williamr@4
|
323 |
# endif /* !defined(_STLP_WCE_EVC3) */
|
williamr@2
|
324 |
|
williamr@4
|
325 |
#endif /* _STLP_INTERNAL_CWCHAR */
|