1 /*
2  * BEGIN illumos section
3  *   This is an unstable interface; changes may be made
4  *   without notice.
5  * END illumos section
6  */
7 /***********************************************************************
8 *                                                                      *
9 *               This software is part of the ast package               *
10 *          Copyright (c) 1985-2025 AT&T Intellectual Property          *
11 *                         All Rights Reserved                          *
12 *       This software is licensed by AT&T Intellectual Property        *
13 *           under the terms and conditions of the license in           *
14 *          http://www.eclipse.org/org/documents/epl-v10.html           *
15 *      (with an md5 checksum of b35adb5213ca9657e911e9befb180842)      *
16 *                                                                      *
17 *              Information and Software Systems Research               *
18 *                            AT&T Research                             *
19 *                           Florham Park NJ                            *
20 *                                                                      *
21 *                 Glenn Fowler <gsf@research.att.com>                  *
22 *                  David Korn <dgk@research.att.com>                   *
23 *                   Phong Vo <kpv@research.att.com>                    *
24 *                                                                      *
25 ***********************************************************************/
26 
27 /* : : generated by proto : : */
28 /* : : generated from contrib/ast/src/lib/libast/features/wchar by iffe version 2012-07-17 : : */
29 
30 
31 #if !defined(__PROTO__)
32 #  if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus)
33 #    if defined(__cplusplus)
34 #      define __LINKAGE__	"C"
35 #    else
36 #      define __LINKAGE__
37 #    endif
38 #    define __STDARG__
39 #    define __PROTO__(x)	x
40 #    define __OTORP__(x)
41 #    define __PARAM__(n,o)	n
42 #    if !defined(__STDC__) && !defined(__cplusplus)
43 #      if !defined(c_plusplus)
44 #      	define const
45 #      endif
46 #      define signed
47 #      define void		int
48 #      define volatile
49 #      define __V_		char
50 #    else
51 #      define __V_		void
52 #    endif
53 #  else
54 #    define __PROTO__(x)	()
55 #    define __OTORP__(x)	x
56 #    define __PARAM__(n,o)	o
57 #    define __LINKAGE__
58 #    define __V_		char
59 #    define const
60 #    define signed
61 #    define void		int
62 #    define volatile
63 #  endif
64 #  define __MANGLE__	__LINKAGE__
65 #  if defined(__cplusplus) || defined(c_plusplus)
66 #    define __VARARG__	...
67 #  else
68 #    define __VARARG__
69 #  endif
70 #  if defined(__STDARG__)
71 #    define __VA_START__(p,a)	va_start(p,a)
72 #  else
73 #    define __VA_START__(p,a)	va_start(p)
74 #  endif
75 #  if !defined(__INLINE__)
76 #    if defined(__cplusplus)
77 #      define __INLINE__	extern __MANGLE__ inline
78 #    else
79 #      if defined(_WIN32) && !defined(__GNUC__)
80 #      	define __INLINE__	__inline
81 #      endif
82 #    endif
83 #  endif
84 #endif
85 #if !defined(__LINKAGE__)
86 #define __LINKAGE__		/* 2004-08-11 transition */
87 #endif
88 #define _sys_types	1	/* #include <sys/types.h> ok */
89 #ifndef _AST_WCHAR_H
90 #define _AST_WCHAR_H	1
91 
92 #define _hdr_stdlib	1	/* #include <stdlib.h> ok */
93 #define _hdr_stdio	1	/* #include <stdio.h> ok */
94 #define _hdr_wchar	1	/* #include <wchar.h> ok */
95 #define _lib_mbstowcs	1	/* mbstowcs() in default lib(s) */
96 #define _lib_wctomb	1	/* wctomb() in default lib(s) */
97 #define _lib_wcrtomb	1	/* wcrtomb() in default lib(s) */
98 #define _lib_wcslen	1	/* wcslen() in default lib(s) */
99 #define _lib_wcstombs	1	/* wcstombs() in default lib(s) */
100 #define _lib_wcwidth	1	/* wcwidth() in default lib(s) */
101 #define _lib_towlower	1	/* towlower() in default lib(s) */
102 #define _lib_towupper	1	/* towupper() in default lib(s) */
103 #define _hdr_time	1	/* #include <time.h> ok */
104 #define _sys_time	1	/* #include <sys/time.h> ok */
105 #define _sys_times	1	/* #include <sys/times.h> ok */
106 #define _hdr_stddef	1	/* #include <stddef.h> ok */
107 #define _typ_mbstate_t	1	/* mbstate_t is a type */
108 #define _nxt_wchar <../include/wchar.h>	/* include path for the native <wchar.h> */
109 #define _nxt_wchar_str "../include/wchar.h"	/* include string for the native <wchar.h> */
110 #ifndef _SFSTDIO_H
111 #include <ast_common.h>
112 #include <stdio.h>
113 #endif
114 
115 #define _hdr_unistd	1	/* #include <unistd.h> ok */
116 #include <wctype.h> /* <wchar.h> includes <wctype.h> */
117 
118 #if _hdr_wchar && defined(_nxt_wchar)
119 #include <../include/wchar.h>	/* the native wchar.h */
120 #endif
121 
122 #ifndef WEOF
123 #define WEOF		(-1)
124 #endif
125 
126 #undef	fgetwc
127 #undef	fgetws
128 #undef	fputwc
129 #undef	fputws
130 #undef	getwc
131 #undef	getwchar
132 #undef	getws
133 #undef	putwc
134 #undef	putwchar
135 #undef	ungetwc
136 
137 #define fgetwc		_ast_fgetwc
138 #define fgetws		_ast_fgetws
139 #define fputwc		_ast_fputwc
140 #define fputws		_ast_fputws
141 #define fwide		_ast_fwide
142 #define fwprintf	_ast_fwprintf
143 #define fwscanf		_ast_fwscanf
144 #define getwc		_ast_getwc
145 #define getwchar	_ast_getwchar
146 #define getws		_ast_getws
147 #define putwc		_ast_putwc
148 #define putwchar	_ast_putwchar
149 #define swprintf	_ast_swprintf
150 #define swscanf		_ast_swscanf
151 #define ungetwc		_ast_ungetwc
152 #define vfwprintf	_ast_vfwprintf
153 #define vfwscanf	_ast_vfwscanf
154 #define vswprintf	_ast_vswprintf
155 #define vswscanf	_ast_vswscanf
156 #define vwprintf	_ast_vwprintf
157 #define vwscanf		_ast_vwscanf
158 #define wprintf		_ast_wprintf
159 #define wscanf		_ast_wscanf
160 
161 #if !_typ_mbstate_t
162 #undef	_typ_mbstate_t
163 #define _typ_mbstate_t	1
164 typedef char mbstate_t;
165 #endif
166 
167 #if _BLD_ast && defined(__EXPORT__)
168 #undef __MANGLE__
169 #define __MANGLE__ __LINKAGE__		__EXPORT__
170 #endif
171 
172 #if !_lib_mbstowcs
173 extern __MANGLE__ size_t		mbstowcs __PROTO__((wchar_t*, const char*, size_t));
174 #endif
175 #if !_lib_wctomb
176 extern __MANGLE__ int		wctomb __PROTO__((char*, wchar_t));
177 #endif
178 #if !_lib_wcrtomb
179 extern __MANGLE__ size_t		wcrtomb __PROTO__((char*, wchar_t, mbstate_t*));
180 #endif
181 #if !_lib_wcslen
182 extern __MANGLE__ size_t		wcslen __PROTO__((const wchar_t*));
183 #endif
184 #if !_lib_wcstombs
185 extern __MANGLE__ size_t		wcstombs __PROTO__((char*, const wchar_t*, size_t));
186 #endif
187 
188 extern __MANGLE__ int		fwprintf __PROTO__((FILE*, const wchar_t*, ...));
189 extern __MANGLE__ int		fwscanf __PROTO__((FILE*, const wchar_t*, ...));
190 extern __MANGLE__ wint_t		fgetwc __PROTO__((FILE*));
191 extern __MANGLE__ wchar_t*		fgetws __PROTO__((wchar_t*, int, FILE*));
192 extern __MANGLE__ wint_t		fputwc __PROTO__((wchar_t, FILE*));
193 extern __MANGLE__ int		fputws __PROTO__((const wchar_t*, FILE*));
194 extern __MANGLE__ int		fwide __PROTO__((FILE*, int));
195 extern __MANGLE__ wint_t		getwc __PROTO__((FILE*));
196 extern __MANGLE__ wint_t		getwchar __PROTO__((void));
197 extern __MANGLE__ wchar_t*		getws __PROTO__((wchar_t*));
198 extern __MANGLE__ wint_t		putwc __PROTO__((wchar_t, FILE*));
199 extern __MANGLE__ wint_t		putwchar __PROTO__((wchar_t));
200 extern __MANGLE__ int		swprintf __PROTO__((wchar_t*, size_t, const wchar_t*, ...));
201 extern __MANGLE__ int		swscanf __PROTO__((const wchar_t*, const wchar_t*, ...));
202 extern __MANGLE__ wint_t		ungetwc __PROTO__((wint_t, FILE*));
203 extern __MANGLE__ int		vfwprintf __PROTO__((FILE*, const wchar_t*, va_list));
204 extern __MANGLE__ int		vfwscanf __PROTO__((FILE*, const wchar_t*, va_list));
205 extern __MANGLE__ int		vwprintf __PROTO__((const wchar_t*, va_list));
206 extern __MANGLE__ int		vwscanf __PROTO__((const wchar_t*, va_list));
207 extern __MANGLE__ int		vswprintf __PROTO__((wchar_t*, size_t, const wchar_t*, va_list));
208 extern __MANGLE__ int		vswscanf __PROTO__((const wchar_t*, const wchar_t*, va_list));
209 extern __MANGLE__ int		wprintf __PROTO__((const wchar_t*, ...));
210 extern __MANGLE__ int		wscanf __PROTO__((const wchar_t*, ...));
211 
212 #undef __MANGLE__
213 #define __MANGLE__ __LINKAGE__
214 
215 #else
216 
217 /* on some systems <wchar.h> is included multiple times with multiple effects */
218 
219 #if _hdr_wchar && defined(_nxt_wchar)
220 #include <../include/wchar.h>	/* the native wchar.h */
221 #endif
222 
223 #endif
224