Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 #pragma GCC system_header
00042
00043 #include <bits/c++config.h>
00044 #include <cstddef>
00045
00046 #if _GLIBCXX_HAVE_WCHAR_H
00047 #include <wchar.h>
00048 #endif
00049
00050 #ifndef _GLIBCXX_CWCHAR
00051 #define _GLIBCXX_CWCHAR 1
00052
00053
00054
00055 #ifndef _GLIBCXX_HAVE_MBSTATE_T
00056 extern "C"
00057 {
00058 typedef struct
00059 {
00060 int __fill[6];
00061 } mbstate_t;
00062 }
00063 #endif
00064
00065 _GLIBCXX_BEGIN_NAMESPACE(std)
00066
00067 using ::mbstate_t;
00068
00069 _GLIBCXX_END_NAMESPACE
00070
00071
00072 #undef btowc
00073 #undef fgetwc
00074 #undef fgetws
00075 #undef fputwc
00076 #undef fputws
00077 #undef fwide
00078 #undef fwprintf
00079 #undef fwscanf
00080 #undef getwc
00081 #undef getwchar
00082 #undef mbrlen
00083 #undef mbrtowc
00084 #undef mbsinit
00085 #undef mbsrtowcs
00086 #undef putwc
00087 #undef putwchar
00088 #undef swprintf
00089 #undef swscanf
00090 #undef ungetwc
00091 #undef vfwprintf
00092 #if _GLIBCXX_HAVE_VFWSCANF
00093 # undef vfwscanf
00094 #endif
00095 #undef vswprintf
00096 #if _GLIBCXX_HAVE_VSWSCANF
00097 # undef vswscanf
00098 #endif
00099 #undef vwprintf
00100 #if _GLIBCXX_HAVE_VWSCANF
00101 # undef vwscanf
00102 #endif
00103 #undef wcrtomb
00104 #undef wcscat
00105 #undef wcschr
00106 #undef wcscmp
00107 #undef wcscoll
00108 #undef wcscpy
00109 #undef wcscspn
00110 #undef wcsftime
00111 #undef wcslen
00112 #undef wcsncat
00113 #undef wcsncmp
00114 #undef wcsncpy
00115 #undef wcspbrk
00116 #undef wcsrchr
00117 #undef wcsrtombs
00118 #undef wcsspn
00119 #undef wcsstr
00120 #undef wcstod
00121 #if _GLIBCXX_HAVE_WCSTOF
00122 # undef wcstof
00123 #endif
00124 #undef wcstok
00125 #undef wcstol
00126 #undef wcstoul
00127 #undef wcsxfrm
00128 #undef wctob
00129 #undef wmemchr
00130 #undef wmemcmp
00131 #undef wmemcpy
00132 #undef wmemmove
00133 #undef wmemset
00134 #undef wprintf
00135 #undef wscanf
00136
00137 #if _GLIBCXX_USE_WCHAR_T
00138
00139 _GLIBCXX_BEGIN_NAMESPACE(std)
00140
00141 using ::wint_t;
00142
00143 using ::btowc;
00144 using ::fgetwc;
00145 using ::fgetws;
00146 using ::fputwc;
00147 using ::fputws;
00148 using ::fwide;
00149 using ::fwprintf;
00150 using ::fwscanf;
00151 using ::getwc;
00152 using ::getwchar;
00153 using ::mbrlen;
00154 using ::mbrtowc;
00155 using ::mbsinit;
00156 using ::mbsrtowcs;
00157 using ::putwc;
00158 using ::putwchar;
00159 #ifndef _GLIBCXX_HAVE_BROKEN_VSWPRINTF
00160 using ::swprintf;
00161 #endif
00162 using ::swscanf;
00163 using ::ungetwc;
00164 using ::vfwprintf;
00165 #if _GLIBCXX_HAVE_VFWSCANF
00166 using ::vfwscanf;
00167 #endif
00168 #ifndef _GLIBCXX_HAVE_BROKEN_VSWPRINTF
00169 using ::vswprintf;
00170 #endif
00171 #if _GLIBCXX_HAVE_VSWSCANF
00172 using ::vswscanf;
00173 #endif
00174 using ::vwprintf;
00175 #if _GLIBCXX_HAVE_VWSCANF
00176 using ::vwscanf;
00177 #endif
00178 using ::wcrtomb;
00179 using ::wcscat;
00180 using ::wcscmp;
00181 using ::wcscoll;
00182 using ::wcscpy;
00183 using ::wcscspn;
00184 using ::wcsftime;
00185 using ::wcslen;
00186 using ::wcsncat;
00187 using ::wcsncmp;
00188 using ::wcsncpy;
00189 using ::wcsrtombs;
00190 using ::wcsspn;
00191 using ::wcstod;
00192 #if _GLIBCXX_HAVE_WCSTOF
00193 using ::wcstof;
00194 #endif
00195 using ::wcstok;
00196 using ::wcstol;
00197 using ::wcstoul;
00198 using ::wcsxfrm;
00199 using ::wctob;
00200 using ::wmemcmp;
00201 using ::wmemcpy;
00202 using ::wmemmove;
00203 using ::wmemset;
00204 using ::wprintf;
00205 using ::wscanf;
00206 using ::wcschr;
00207 using ::wcspbrk;
00208 using ::wcsrchr;
00209 using ::wcsstr;
00210 using ::wmemchr;
00211
00212 #ifndef __CORRECT_ISO_CPP_WCHAR_H_PROTO
00213 inline wchar_t*
00214 wcschr(wchar_t* __p, wchar_t __c)
00215 { return wcschr(const_cast<const wchar_t*>(__p), __c); }
00216
00217 inline wchar_t*
00218 wcspbrk(wchar_t* __s1, const wchar_t* __s2)
00219 { return wcspbrk(const_cast<const wchar_t*>(__s1), __s2); }
00220
00221 inline wchar_t*
00222 wcsrchr(wchar_t* __p, wchar_t __c)
00223 { return wcsrchr(const_cast<const wchar_t*>(__p), __c); }
00224
00225 inline wchar_t*
00226 wcsstr(wchar_t* __s1, const wchar_t* __s2)
00227 { return wcsstr(const_cast<const wchar_t*>(__s1), __s2); }
00228
00229 inline wchar_t*
00230 wmemchr(wchar_t* __p, wchar_t __c, size_t __n)
00231 { return wmemchr(const_cast<const wchar_t*>(__p), __c, __n); }
00232 #endif
00233
00234 _GLIBCXX_END_NAMESPACE
00235
00236 #if _GLIBCXX_USE_C99
00237
00238 #undef wcstold
00239 #undef wcstoll
00240 #undef wcstoull
00241
00242 _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
00243
00244 #if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
00245 extern "C" long double
00246 (wcstold)(const wchar_t * restrict, wchar_t ** restrict);
00247 #endif
00248 #if !_GLIBCXX_USE_C99_DYNAMIC
00249 using ::wcstold;
00250 #endif
00251 #if _GLIBCXX_USE_C99_LONG_LONG_CHECK || _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
00252 extern "C" long long int
00253 (wcstoll)(const wchar_t * restrict, wchar_t ** restrict, int);
00254 extern "C" unsigned long long int
00255 (wcstoull)(const wchar_t * restrict, wchar_t ** restrict, int);
00256 #endif
00257 #if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
00258 using ::wcstoll;
00259 using ::wcstoull;
00260 #endif
00261
00262 _GLIBCXX_END_NAMESPACE
00263
00264 _GLIBCXX_BEGIN_NAMESPACE(std)
00265
00266 using ::__gnu_cxx::wcstold;
00267 using ::__gnu_cxx::wcstoll;
00268 using ::__gnu_cxx::wcstoull;
00269
00270 _GLIBCXX_END_NAMESPACE
00271
00272 #endif
00273
00274 #endif //_GLIBCXX_USE_WCHAR_T
00275
00276 #ifdef __GXX_EXPERIMENTAL_CXX0X__
00277 # if defined(_GLIBCXX_INCLUDE_AS_TR1)
00278 # error C++0x header cannot be included from TR1 header
00279 # endif
00280 # if defined(_GLIBCXX_INCLUDE_AS_CXX0X)
00281 # include <tr1_impl/cwchar>
00282 # else
00283 # define _GLIBCXX_INCLUDE_AS_CXX0X
00284 # define _GLIBCXX_BEGIN_NAMESPACE_TR1
00285 # define _GLIBCXX_END_NAMESPACE_TR1
00286 # define _GLIBCXX_TR1
00287 # include <tr1_impl/cwchar>
00288 # undef _GLIBCXX_TR1
00289 # undef _GLIBCXX_END_NAMESPACE_TR1
00290 # undef _GLIBCXX_BEGIN_NAMESPACE_TR1
00291 # undef _GLIBCXX_INCLUDE_AS_CXX0X
00292 # endif
00293 #endif
00294
00295 #endif