/* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* bos72X src/bos/usr/include/wchar.h 1.13.7.7 */ /* */ /* Licensed Materials - Property of IBM */ /* */ /* COPYRIGHT International Business Machines Corp. 1985,2021 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ /* */ /* IBM_PROLOG_END_TAG */ /* @(#)33 1.13.7.7 src/bos/usr/include/wchar.h, libcnls, bos72X, x2021_25A9 6/4/21 03:16:02 */ /* * COMPONENT_NAME: (LIBCNLS) Standard C Library National Language Support * * FUNCTIONS: * * ORIGINS: 27 * * (C) COPYRIGHT International Business Machines Corp. 1985, 1994 * All Rights Reserved * Licensed Materials - Property of IBM * * US Government Users Restricted Rights - Use, duplication or * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ #ifndef _H_WCHAR #define _H_WCHAR #ifndef _H_STANDARDS #include #endif #include #include #ifndef _H_TYPES #include #endif #include #ifdef __cplusplus extern "C" { #endif #if defined(_ISOC99_SOURCE) || defined(_XOPEN_SOURCE) #ifndef _H_STDIO #include #endif #ifndef _H_TIME #include #endif #ifndef WEOF #define WEOF (-1) #endif /* WEOF */ #ifndef NULL #define NULL (0) #endif #if _XOPEN_SOURCE >= 500 || defined(_ISOC99_SOURCE) #ifndef __MBSTATE_T #define __MBSTATE_T typedef char * mbstate_t; /* conversion state holder ISO C MSE */ #endif /*__MBSTATE_T*/ #ifndef _WCHAR_MAX #define _WCHAR_MAX #ifdef __64BIT__ #define WCHAR_MAX (4294967295U) #else #define WCHAR_MAX (65535) #endif #define WCHAR_MIN (0) #endif #endif /* _XOPEN_SOURCE >= 500 || defined(_ISOC99_SOURCE) */ #endif /* defined(_ISOC99_SOURCE) || defined(_XOPEN_SOURCE) */ #ifndef _LOCALE_T #define _LOCALE_T typedef void * locale_t; #endif #ifdef _ISOC99_SOURCE #ifndef _H_STDIO #include /* needed for FILE */ #endif #ifndef _WINT_T #define _WINT_T typedef int wint_t; #endif #ifdef _NO_PROTO extern int vfwscanf(); extern int _NOTHROW(vswscanf, ()); extern int vwscanf(); extern float _NOTHROW(wcstof, ()); #else extern int vfwscanf(FILE * __restrict__, const wchar_t * __restrict__, va_list); extern int _NOTHROW(vswscanf, (const wchar_t * __restrict__, const wchar_t * __restrict__, va_list)); extern int vwscanf(const wchar_t * __restrict__, va_list); extern float _NOTHROW(wcstof, (const wchar_t * __restrict__, wchar_t ** __restrict__)); #endif /* * 64-bit integers, known as long long and unsigned long long */ #if defined(_LONG_LONG) #ifdef _NO_PROTO extern long long int _NOTHROW(wcstoll, ( )); extern unsigned long long int _NOTHROW(wcstoull, ( )); #else /* ifdef _NO_PROTO */ extern long long int _NOTHROW(wcstoll, ( const wchar_t * __restrict__, /* String to convert */ wchar_t ** __restrict__, /* Pointer to update */ int )); /* Base to use */ extern unsigned long long int _NOTHROW(wcstoull, ( const wchar_t * __restrict__, /* String to convert */ wchar_t ** __restrict__, /* Pointer to update */ int )); /* Base to use */ #endif /* ifdef _NO_PROTO */ #endif /* if defined(_LONG_LONG) */ #endif /* _ISOC99_SOURCE */ #if defined(_XOPEN_SOURCE) || defined(_ISOC99_SOURCE) #ifdef _NO_PROTO extern wint_t fgetwc(); extern wchar_t *fgetws(); extern wint_t fputwc(); extern int fputws(); extern wint_t getwc(); extern wint_t getwchar(); #if (_XOPEN_SOURCE >= 700) /*SUSv4 routine */ extern FILE *_NOTHROW(open_wmemstream, ()); #endif #if (!(defined(__H_CTYPE) && defined(_ILS_MACROS))) extern int _NOTHROW(iswalnum, ()); extern int _NOTHROW(iswalpha, ()); extern int _NOTHROW(iswcntrl, ()); extern int _NOTHROW(iswdigit, ()); extern int _NOTHROW(iswgraph, ()); extern int _NOTHROW(iswlower, ()); extern int _NOTHROW(iswprint, ()); extern int _NOTHROW(iswpunct, ()); extern int _NOTHROW(iswspace, ()); extern int _NOTHROW(iswupper, ()); extern int _NOTHROW(iswxdigit, ()); extern int _NOTHROW(iswctype, ()); extern int _NOTHROW(towlower, ()); extern int _NOTHROW(towupper, ()); #if (_XOPEN_SOURCE >= 700) extern int _NOTHROW(iswalnum_l, ()); extern int _NOTHROW(iswalpha_l, ()); extern int _NOTHROW(iswcntrl_l, ()); extern int _NOTHROW(iswdigit_l, ()); extern int _NOTHROW(iswgraph_l, ()); extern int _NOTHROW(iswlower_l, ()); extern int _NOTHROW(iswprint_l, ()); extern int _NOTHROW(iswpunct_l, ()); extern int _NOTHROW(iswspace_l, ()); extern int _NOTHROW(iswupper_l, ()); extern int _NOTHROW(iswxdigit_l, ()); extern int _NOTHROW(iswctype_l, ()); extern int _NOTHROW(towlower_l, ()); extern int _NOTHROW(towupper_l, ()); #endif #endif /* (!(defined(__H_CTYPE) && defined(_ILS_MACROS))) */ extern wint_t putwc(); extern wint_t putwchar(); extern wint_t ungetwc(); extern wctype_t _NOTHROW(wctype, ()); extern wchar_t *_NOTHROW(wcscat, ()); extern wchar_t *_NOTHROW(wcschr, ()); extern int _NOTHROW(wcscmp, ()); extern int _NOTHROW(wcscoll, ()); #if (_XOPEN_SOURCE >= 700) extern int _NOTHROW(wcscoll_l, ()); #endif extern wchar_t *_NOTHROW(wcscpy, ()); extern size_t _NOTHROW(wcscspn, ()); extern size_t _NOTHROW(wcsftime, ()); extern size_t _NOTHROW(wcslen, ()); extern wchar_t *_NOTHROW(wcsncat, ()); extern int _NOTHROW(wcsncmp, ()); extern wchar_t *_NOTHROW(wcsncpy, ()); extern wchar_t *_NOTHROW(wcspbrk, ()); extern wchar_t *_NOTHROW(wcsrchr, ()); extern size_t _NOTHROW(wcsspn, ()); extern double _NOTHROW(wcstod, ()); extern wchar_t *_NOTHROW(wcstok, ()); #if defined(_THREAD_SAFE) && defined(_ALL_SOURCE) extern wchar_t *wcstok_r(); #endif /* _THREAD_SAFE */ extern long _NOTHROW(wcstol, ()); extern unsigned long _NOTHROW(wcstoul, ()); #ifdef _XOPEN_SOURCE extern wchar_t *_NOTHROW(wcswcs, ()); extern int _NOTHROW(wcswidth, ()); extern int _NOTHROW(wcwidth, ()); #endif /* _XOPEN_SOURCE */ extern size_t _NOTHROW(wcsxfrm, ()); #if (_XOPEN_SOURCE >= 700) extern size_t _NOTHROW(wcsxfrm_l, ()); #endif #else extern wint_t fgetwc(FILE *); extern wchar_t *fgetws(wchar_t * __restrict__, int, FILE * __restrict__); extern int fputws(const wchar_t * __restrict__, FILE * __restrict__); extern wint_t getwc(FILE *); extern wint_t getwchar(void); #if (_XOPEN_SOURCE >= 700) /*SUSv4 routine */ extern FILE *_NOTHROW(open_wmemstream, (wchar_t **, size_t *)); #endif #if (!(defined(__H_CTYPE) && defined(_ILS_MACROS))) extern int _NOTHROW(iswalnum, (wint_t)); extern int _NOTHROW(iswalpha, (wint_t)); extern int _NOTHROW(iswcntrl, (wint_t)); extern int _NOTHROW(iswdigit, (wint_t)); extern int _NOTHROW(iswgraph, (wint_t)); extern int _NOTHROW(iswlower, (wint_t)); extern int _NOTHROW(iswprint, (wint_t)); extern int _NOTHROW(iswpunct, (wint_t)); extern int _NOTHROW(iswspace, (wint_t)); extern int _NOTHROW(iswupper, (wint_t)); extern int _NOTHROW(iswxdigit, (wint_t)); extern int _NOTHROW(iswctype, (wint_t, wctype_t)); extern int _NOTHROW(towlower, (wint_t)); extern int _NOTHROW(towupper, (wint_t)); #if (_XOPEN_SOURCE >= 700) extern int _NOTHROW(iswalnum_l, (wint_t, locale_t)); extern int _NOTHROW(iswalpha_l, (wint_t, locale_t)); extern int _NOTHROW(iswcntrl_l, (wint_t, locale_t)); extern int _NOTHROW(iswdigit_l, (wint_t, locale_t)); extern int _NOTHROW(iswgraph_l, (wint_t, locale_t)); extern int _NOTHROW(iswlower_l, (wint_t, locale_t)); extern int _NOTHROW(iswprint_l, (wint_t, locale_t)); extern int _NOTHROW(iswpunct_l, (wint_t, locale_t)); extern int _NOTHROW(iswspace_l, (wint_t, locale_t)); extern int _NOTHROW(iswupper_l, (wint_t, locale_t)); extern int _NOTHROW(iswxdigit_l, (wint_t, locale_t)); extern int _NOTHROW(iswctype_l, (wint_t, wctype_t, locale_t)); extern int _NOTHROW(towlower_l, (wint_t, locale_t)); extern int _NOTHROW(towupper_l, (wint_t, locale_t)); #endif #endif /* (!(defined(__H_CTYPE) && defined(_ILS_MACROS))) */ #if (_XOPEN_SOURCE >= 500) || defined(_ISOC99_SOURCE) extern wint_t fputwc(wchar_t, FILE *); extern wint_t putwc(wchar_t, FILE *); extern wint_t putwchar(wchar_t); #else extern wint_t fputwc(wint_t, FILE *); extern wint_t putwc(wint_t, FILE *); extern wint_t putwchar(wint_t); #endif /* _XOPEN_SOURCE >= 500 || defined(_ISOC99_SOURCE) */ #ifdef __cplusplus98__interface__ extern const wchar_t *_NOTHROW(wcschr, (const wchar_t *, wchar_t)); extern wchar_t *_NOTHROW(wcschr, ( wchar_t *, wchar_t)); #else extern wchar_t *_NOTHROW(wcschr, (const wchar_t *, wchar_t)); #endif extern wint_t ungetwc(wint_t, FILE *); extern wctype_t _NOTHROW(wctype, (const char*)); extern wchar_t *_NOTHROW(wcscat, (wchar_t * __restrict__, const wchar_t *__restrict__)); extern int _NOTHROW(wcscmp, (const wchar_t *, const wchar_t *)); extern int _NOTHROW(wcscoll, (const wchar_t *, const wchar_t *)); #if (_XOPEN_SOURCE >= 700) extern int _NOTHROW(wcscoll_l, (const wchar_t *, const wchar_t *, locale_t)); #endif extern wchar_t *_NOTHROW(wcscpy, (wchar_t * __restrict__, const wchar_t * __restrict__)); extern size_t _NOTHROW(wcscspn, (const wchar_t *, const wchar_t *)); #if ((_XOPEN_SOURCE >= 500) || defined(_ISOC99_SOURCE)) && !defined(_UNIX95) static size_t _NOTHROW(wcsftime, (wchar_t *__wcsftime_wcs, size_t __wcsftime_maxsize, const wchar_t *__wcsftime_format, const struct tm *__wcsftime_timptr)) { extern size_t __iso_wcsftime(wchar_t *, size_t, const wchar_t *, const struct tm *); return __iso_wcsftime(__wcsftime_wcs, __wcsftime_maxsize, __wcsftime_format, __wcsftime_timptr); } #else /* _XOPEN_SOURCE */ extern size_t _NOTHROW(wcsftime, (wchar_t * __restrict__, size_t, const char * __restrict__, const struct tm * __restrict__)); #endif /* _XOPEN_SOURCE */ #ifdef __cplusplus98__interface__ extern const wchar_t *_NOTHROW(wcspbrk, (const wchar_t *, const wchar_t *)); extern wchar_t *_NOTHROW(wcspbrk, ( wchar_t *, wchar_t *)); extern const wchar_t *_NOTHROW(wcsrchr, (const wchar_t *, wchar_t)); extern wchar_t *_NOTHROW(wcsrchr, ( wchar_t *, wchar_t)); #else extern wchar_t *_NOTHROW(wcspbrk, (const wchar_t *, const wchar_t *)); extern wchar_t *_NOTHROW(wcsrchr, (const wchar_t *, wchar_t)); #endif extern size_t _NOTHROW(wcslen, (const wchar_t *)); extern wchar_t *_NOTHROW(wcsncat, (wchar_t * __restrict__, const wchar_t * __restrict__, size_t)); extern int _NOTHROW(wcsncmp, (const wchar_t *, const wchar_t *, size_t)); extern wchar_t *_NOTHROW(wcsncpy, (wchar_t * __restrict__, const wchar_t * __restrict__, size_t)); extern size_t _NOTHROW(wcsspn, (const wchar_t *, const wchar_t *)); extern double _NOTHROW(wcstod, (const wchar_t * __restrict__, wchar_t ** __restrict__)); #if ((_XOPEN_SOURCE >= 500) || defined(_ISOC99_SOURCE)) && !defined(_UNIX95) static wchar_t *_NOTHROW(wcstok, (wchar_t *__wcstok_ws1, const wchar_t *__wcstok_ws2, wchar_t **__wcstok_ptr)) { extern wchar_t *__iso_wcstok(wchar_t *, const wchar_t *, wchar_t **); return __iso_wcstok(__wcstok_ws1, __wcstok_ws2, __wcstok_ptr); } #else /* _XOPEN_SOURCE */ extern wchar_t *_NOTHROW(wcstok, (wchar_t * __restrict__, const wchar_t * __restrict__)); #endif /* _XOPEN_SOURCE */ #if defined(_THREAD_SAFE) && defined(_ALL_SOURCE) extern wchar_t *wcstok_r(wchar_t *, const wchar_t *, wchar_t **); #endif /* _THREAD_SAFE */ extern long _NOTHROW(wcstol, (const wchar_t * __restrict__, wchar_t ** __restrict__, int)); extern unsigned long _NOTHROW(wcstoul, (const wchar_t * __restrict__, wchar_t ** __restrict__, int)); #ifdef _XOPEN_SOURCE extern wchar_t *_NOTHROW(wcswcs, (const wchar_t *, const wchar_t *)); extern int _NOTHROW(wcswidth, (const wchar_t *, size_t)); extern int _NOTHROW(wcwidth, (wchar_t)); #endif /* _XOPEN_SOURCE */ extern size_t _NOTHROW(wcsxfrm, (wchar_t * __restrict__, const wchar_t * __restrict__, size_t)); #if _XOPEN_SOURCE >= 700 extern size_t _NOTHROW(wcsxfrm_l, (wchar_t * __restrict__, const wchar_t * __restrict__, size_t, locale_t)); #endif #if _XOPEN_SOURCE >= 500 || defined(_ISOC99_SOURCE) extern wint_t _NOTHROW(btowc, (int)); extern int fwprintf(FILE * __restrict__, const wchar_t * __restrict__, ...); extern int fwscanf(FILE * __restrict__, const wchar_t * __restrict__, ...); extern int _NOTHROW(fwide, (FILE *, int)); extern int _NOTHROW(mbsinit, (const mbstate_t *)); extern size_t _NOTHROW(mbrlen, (const char * __restrict__, size_t, mbstate_t *__restrict__)); extern size_t _NOTHROW(mbrtowc, (wchar_t * __restrict__, const char * __restrict__, size_t, mbstate_t * __restrict__)); extern size_t _NOTHROW(mbsrtowcs, (wchar_t * __restrict__, const char ** __restrict__, size_t, mbstate_t * __restrict__)); extern int swprintf(wchar_t * __restrict__, size_t, const wchar_t * __restrict__, ...); extern int swscanf(const wchar_t * __restrict__, const wchar_t * __restrict__, ...); #ifdef _VA_LIST extern int vfwprintf(FILE * __restrict__, const wchar_t * __restrict__, va_list); extern int vwprintf(const wchar_t * __restrict__, va_list); extern int _NOTHROW(vswprintf, (wchar_t * __restrict__, size_t, const wchar_t * __restrict__, va_list)); #else #define _HIDDEN_VA_LIST #include extern int vfwprintf(FILE * __restrict__, const wchar_t * __restrict__, __va_list); extern int vwprintf(const wchar_t * __restrict__, __va_list); extern int _NOTHROW(vswprintf, (wchar_t * __restrict__, size_t, const wchar_t * __restrict__, __va_list)); #endif /* _VA_LIST */ #ifdef __cplusplus98__interface__ extern const wchar_t * wcsstr(const wchar_t *, const wchar_t *); extern wchar_t *wcsstr( wchar_t *, wchar_t *); extern const wchar_t * wmemchr(const wchar_t *, wchar_t, size_t); extern wchar_t *wmemchr( wchar_t *, wchar_t, size_t); #else extern wchar_t *wcsstr(const wchar_t *, const wchar_t *); extern wchar_t *wmemchr(const wchar_t *, wchar_t, size_t); #endif extern size_t _NOTHROW(wcrtomb, (char * __restrict__, wchar_t, mbstate_t * __restrict__)); extern size_t _NOTHROW(wcsrtombs, (char * __restrict__, const wchar_t ** __restrict__, size_t, mbstate_t * __restrict__)); extern int _NOTHROW(wctob, (wint_t)); extern wctype_t _NOTHROW(wctype, (const char *)); extern int _NOTHROW(wmemcmp, (const wchar_t *, const wchar_t *, size_t)); extern wchar_t *_NOTHROW(wmemcpy, (wchar_t * __restrict__, const wchar_t * __restrict__, size_t)); extern wchar_t *_NOTHROW(wmemmove, (wchar_t *, const wchar_t *, size_t)); extern wchar_t *_NOTHROW(wmemset, (wchar_t *, wchar_t, size_t)); extern int wprintf(const wchar_t * __restrict__, ...); extern int wscanf(const wchar_t * __restrict__, ...); #endif #endif /* _NO_PROTO */ #endif /* _XOPEN_SOURCE || defined (ISOC99_SOURCE) */ #if (_XOPEN_SOURCE >= 700) #ifdef _NO_PROTO extern int _NOTHROW(wcscasecmp, ()); extern int _NOTHROW(wcscasecmp_l, ()); extern wchar_t *_NOTHROW(wcsdup, ()); extern int _NOTHROW(wcsncasecmp, ()); extern int _NOTHROW(wcsncasecmp_l, ()); extern size_t _NOTHROW(wcsnlen, ()); extern size_t _NOTHROW(mbsnrtowcs, ()); extern wchar_t *_NOTHROW(wcpcpy, ()); extern wchar_t *_NOTHROW(wcpncpy, ()); #else extern int _NOTHROW(wcscasecmp, (const wchar_t *, const wchar_t *)); extern int _NOTHROW(wcscasecmp_l, (const wchar_t *, const wchar_t *, locale_t)); extern wchar_t *_NOTHROW(wcsdup, (const wchar_t *)); extern int _NOTHROW(wcsncasecmp, (const wchar_t *, const wchar_t *, size_t)); extern int _NOTHROW(wcsncasecmp_l, (const wchar_t *, const wchar_t *, size_t, locale_t)); extern size_t _NOTHROW(wcsnlen, (const wchar_t *, size_t)); extern size_t _NOTHROW(mbsnrtowcs, (wchar_t *, const char **, size_t, size_t, mbstate_t *)); extern wchar_t *_NOTHROW(wcpcpy, (wchar_t *, const wchar_t *)); extern wchar_t *_NOTHROW(wcpncpy, (wchar_t *, const wchar_t *, size_t)); #endif /* _NO_PROTO */ #endif /* _XOPEN_SOURCE */ #ifdef _ISOC99_SOURCE #ifndef _WCSTOLD #define _WCSTOLD #if defined(__LONGDOUBLE128) || defined(__LONGDOUBLE80) #ifdef _NO_PROTO extern long double _NOTHROW(wcstold, ()); #else extern long double _NOTHROW(wcstold, (const wchar_t * __restrict__, wchar_t ** __restrict__)); #endif /* NO_PROTO */ #else static long double _NOTHROW(wcstold, (const wchar_t * __restrict__ __a, wchar_t ** __restrict__ __b)) { return ((long double)wcstod (__a, __b)); } #endif /* defined(__LONGDOUBLE128) || defined(__LONGDOUBLE80) */ #endif /* _WCSTOLD */ #endif /* _ISOC99_SOURCE */ /* Defect 1081697 : UNIXv7 support for wcsnrtombs() */ #if defined(_ALL_SOURCE) || (_XOPEN_SOURCE >= 700) #ifdef _NO_PROTO extern size_t _NOTHROW(wcsnrtombs, ()); #else /* NO PROTO */ extern size_t _NOTHROW(wcsnrtombs, (char *, const wchar_t **, size_t, size_t, mbstate_t *)); #endif /*NO PROTO */ #endif /* _XOPEN_SOURCE */ #ifdef _ALL_SOURCE #define getwchar() getwc(stdin) #ifdef _NO_PROTO extern wchar_t *getws(); extern int putws(); extern int wsprintf(); extern int vwsprintf(); #else extern wchar_t *getws(wchar_t *); extern int putws(const wchar_t *); extern int wsprintf(wchar_t *, const char *, ...); #ifdef _VA_LIST extern int vwsprintf(wchar_t *, const char *, va_list); #else #define _HIDDEN_VA_LIST #include extern int vwsprintf(wchar_t *, const char *, __va_list); #endif /* _VA_LIST */ #endif /* _NO_PROTO */ extern wchar_t *strtows(wchar_t *, char *); extern char *wstrtos(char *, wchar_t *); #ifndef __ia64 #define wstrcat NCstrcat #define wstrlen NCstrlen #define wstrdup NCstrdup #define wstrncat NCstrncat #define wstrcmp NCstrcmp #define wstrncmp NCstrncmp #define wstrcpy NCstrcpy #define wstrncpy NCstrncpy #endif #endif /* _ALL_SOURCE */ #ifdef __STDC_WANT_DEC_FP__ /* DFP scope requested */ #ifdef _NO_PROTO extern _Decimal32 wcstod32(); extern _Decimal64 wcstod64(); extern _Decimal128 wcstod128(); #else extern _Decimal32 wcstod32(const wchar_t *, wchar_t **); extern _Decimal64 wcstod64(const wchar_t *, wchar_t **); extern _Decimal128 wcstod128(const wchar_t *, wchar_t **); #endif /* _NO_PROTO */ #endif /* __STDC_WANT_DEC_FP__ */ #ifdef __cplusplus } #endif #endif /* _H_WCHAR */