105
106 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
107 #if !defined(_WCTYPE_T) || __cplusplus >= 199711L
108 #define _WCTYPE_T
109 typedef int wctype_t;
110 #endif
111 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
112
113 /*
114 * XPG6 requires that va_list be defined as defined in <stdarg.h>,
115 * however, inclusion of <stdarg.h> breaks Standard C namespace.
116 */
117 #if defined(_XPG6) && !defined(_VA_LIST)
118 #define _VA_LIST
119 typedef __va_list va_list;
120 #endif /* defined(_XPG6) && !defined(_VA_LIST) */
121
122 #ifdef __STDC__
123
124 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
125 extern int iswalpha(wint_t);
126 extern int iswupper(wint_t);
127 extern int iswlower(wint_t);
128 extern int iswdigit(wint_t);
129 extern int iswxdigit(wint_t);
130 extern int iswalnum(wint_t);
131 extern int iswspace(wint_t);
132 extern int iswpunct(wint_t);
133 extern int iswprint(wint_t);
134 extern int iswgraph(wint_t);
135 extern int iswcntrl(wint_t);
136 extern int iswctype(wint_t, wctype_t);
137 extern wint_t towlower(wint_t);
138 extern wint_t towupper(wint_t);
139 extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
140 extern int wcswidth(const wchar_t *, size_t);
141 extern int wcwidth(wchar_t);
142 extern wctype_t wctype(const char *);
143 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
144
145 #if defined(__EXTENSIONS__) || \
146 (!defined(_STRICT_STDC) && !defined(__XOPEN_OR_POSIX))
147 /* || defined(_XPG7) */
148 extern wchar_t *wcsdup(const wchar_t *);
149 extern size_t wcsnlen(const wchar_t *, size_t);
150 extern wchar_t *wcpcpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD);
151 extern wchar_t *wcpncpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD,
152 size_t);
153 extern int wcscasecmp(const wchar_t *, const wchar_t *);
154 extern int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);
155 #endif
156
157 #else /* __STDC__ */
158
159 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
160 extern int iswalpha();
161 extern int iswupper();
162 extern int iswlower();
|
105
106 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
107 #if !defined(_WCTYPE_T) || __cplusplus >= 199711L
108 #define _WCTYPE_T
109 typedef int wctype_t;
110 #endif
111 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
112
113 /*
114 * XPG6 requires that va_list be defined as defined in <stdarg.h>,
115 * however, inclusion of <stdarg.h> breaks Standard C namespace.
116 */
117 #if defined(_XPG6) && !defined(_VA_LIST)
118 #define _VA_LIST
119 typedef __va_list va_list;
120 #endif /* defined(_XPG6) && !defined(_VA_LIST) */
121
122 #ifdef __STDC__
123
124 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
125 #if __cplusplus >= 199711L
126 namespace std {
127 #endif
128 extern int iswalpha(wint_t);
129 extern int iswupper(wint_t);
130 extern int iswlower(wint_t);
131 extern int iswdigit(wint_t);
132 extern int iswxdigit(wint_t);
133 extern int iswalnum(wint_t);
134 extern int iswspace(wint_t);
135 extern int iswpunct(wint_t);
136 extern int iswprint(wint_t);
137 extern int iswgraph(wint_t);
138 extern int iswcntrl(wint_t);
139 extern int iswctype(wint_t, wctype_t);
140 extern wint_t towlower(wint_t);
141 extern wint_t towupper(wint_t);
142 extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
143 extern int wcswidth(const wchar_t *, size_t);
144 extern int wcwidth(wchar_t);
145 extern wctype_t wctype(const char *);
146 #if __cplusplus >= 199711L
147 } /* namespace std */
148
149 using std::iswalpha;
150 using std::iswupper;
151 using std::iswlower;
152 using std::iswdigit;
153 using std::iswxdigit;
154 using std::iswalnum;
155 using std::iswspace;
156 using std::iswpunct;
157 using std::iswprint;
158 using std::iswgraph;
159 using std::iswcntrl;
160 using std::iswctype;
161 using std::towlower;
162 using std::towupper;
163 using std::wcswcs;
164 using std::wcswidth;
165 using std::wcwidth;
166 using std::wctype;
167 #endif
168 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
169
170 #if defined(__EXTENSIONS__) || \
171 (!defined(_STRICT_STDC) && !defined(__XOPEN_OR_POSIX))
172 /* || defined(_XPG7) */
173 extern wchar_t *wcsdup(const wchar_t *);
174 extern size_t wcsnlen(const wchar_t *, size_t);
175 extern wchar_t *wcpcpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD);
176 extern wchar_t *wcpncpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD,
177 size_t);
178 extern int wcscasecmp(const wchar_t *, const wchar_t *);
179 extern int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);
180 #endif
181
182 #else /* __STDC__ */
183
184 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
185 extern int iswalpha();
186 extern int iswupper();
187 extern int iswlower();
|