xref: /netbsd-src/external/gpl3/gdb/lib/libgnulib/arch/ia64/gnulib/config.h (revision 800f65cfd08922525602506b0895f419b45e9f33)
1ae87de88Schristos /* This file is automatically generated.  DO NOT EDIT! */
2ae87de88Schristos /* Generated from: NetBSD: mknative-gdb,v 1.16 2023/07/31 17:09:59 christos Exp  */
3ae87de88Schristos /* Generated from: NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp  */
4ae87de88Schristos 
5ae87de88Schristos /* config.h.  Generated from config.in by configure.  */
6ae87de88Schristos /* config.in.  Generated from configure.ac by autoheader.  */
7ae87de88Schristos 
8ae87de88Schristos /* Define if building universal (internal helper macro) */
9ae87de88Schristos /* #undef AC_APPLE_UNIVERSAL_BUILD */
10ae87de88Schristos 
11ae87de88Schristos /* Define to the number of bits in type 'ptrdiff_t'. */
12ae87de88Schristos #define BITSIZEOF_PTRDIFF_T 64
13ae87de88Schristos 
14ae87de88Schristos /* Define to the number of bits in type 'sig_atomic_t'. */
15ae87de88Schristos #define BITSIZEOF_SIG_ATOMIC_T 64
16ae87de88Schristos 
17ae87de88Schristos /* Define to the number of bits in type 'size_t'. */
18ae87de88Schristos #define BITSIZEOF_SIZE_T 64
19ae87de88Schristos 
20ae87de88Schristos /* Define to the number of bits in type 'wchar_t'. */
21ae87de88Schristos #define BITSIZEOF_WCHAR_T 32
22ae87de88Schristos 
23ae87de88Schristos /* Define to the number of bits in type 'wint_t'. */
24ae87de88Schristos #define BITSIZEOF_WINT_T 32
25ae87de88Schristos 
26ae87de88Schristos /* Define to 1 if chown fails to change ctime when at least one argument was
27ae87de88Schristos    not -1. */
28ae87de88Schristos #define CHOWN_CHANGE_TIME_BUG 1
29ae87de88Schristos 
30ae87de88Schristos /* Define if chown is not POSIX compliant regarding IDs of -1. */
31ae87de88Schristos #define CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE 1
32ae87de88Schristos 
33ae87de88Schristos /* Define if chown modifies symlinks. */
34ae87de88Schristos /* #undef CHOWN_MODIFIES_SYMLINK */
35ae87de88Schristos 
36ae87de88Schristos /* Define to 1 if chown mishandles trailing slash. */
37ae87de88Schristos #define CHOWN_TRAILING_SLASH_BUG 1
38ae87de88Schristos 
39ae87de88Schristos /* Define to 1 if using 'alloca.c'. */
40ae87de88Schristos /* #undef C_ALLOCA */
41ae87de88Schristos 
42ae87de88Schristos /* Define as the bit index in the word where to find bit 0 of the exponent of
43ae87de88Schristos    'double'. */
44ae87de88Schristos #define DBL_EXPBIT0_BIT 20
45ae87de88Schristos 
46ae87de88Schristos /* Define as the word index where to find the exponent of 'double'. */
47ae87de88Schristos #define DBL_EXPBIT0_WORD 1
48ae87de88Schristos 
49ae87de88Schristos /* the name of the file descriptor member of DIR */
50ae87de88Schristos /* #undef DIR_FD_MEMBER_NAME */
51ae87de88Schristos 
52ae87de88Schristos #ifdef DIR_FD_MEMBER_NAME
53ae87de88Schristos # define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME)
54ae87de88Schristos #else
55ae87de88Schristos # define DIR_TO_FD(Dir_p) -1
56ae87de88Schristos #endif
57ae87de88Schristos 
58ae87de88Schristos 
59ae87de88Schristos /* Define to 1 if // is a file system root distinct from /. */
60ae87de88Schristos /* #undef DOUBLE_SLASH_IS_DISTINCT_ROOT */
61ae87de88Schristos 
62ae87de88Schristos /* Define if struct dirent has a member d_ino that actually works. */
63ae87de88Schristos /* #undef D_INO_IN_DIRENT */
64ae87de88Schristos 
65ae87de88Schristos /* Define this to 1 if F_DUPFD behavior does not match POSIX */
66ae87de88Schristos /* #undef FCNTL_DUPFD_BUGGY */
67ae87de88Schristos 
68ae87de88Schristos /* Define to nothing if C supports flexible array members, and to 1 if it does
69ae87de88Schristos    not. That way, with a declaration like 'struct s { int n; short
70ae87de88Schristos    d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99
71ae87de88Schristos    compilers. Use 'FLEXSIZEOF (struct s, d, N * sizeof (short))' to calculate
72ae87de88Schristos    the size in bytes of such a struct containing an N-element array. */
73ae87de88Schristos #define FLEXIBLE_ARRAY_MEMBER /**/
74ae87de88Schristos 
75ae87de88Schristos /* Define to 1 if mkdir mistakenly creates a directory given with a trailing
76ae87de88Schristos    dot component. */
77ae87de88Schristos #define FUNC_MKDIR_DOT_BUG 1
78ae87de88Schristos 
79ae87de88Schristos /* Define to 1 if realpath() can malloc memory, always gives an absolute path,
80ae87de88Schristos    and handles a trailing slash correctly. */
81ae87de88Schristos /* #undef FUNC_REALPATH_NEARLY_WORKS */
82ae87de88Schristos 
83ae87de88Schristos /* Define to 1 if realpath() can malloc memory, always gives an absolute path,
84ae87de88Schristos    and handles leading slashes and a trailing slash correctly. */
85ae87de88Schristos /* #undef FUNC_REALPATH_WORKS */
86ae87de88Schristos 
87ae87de88Schristos /* Define this to 'void' or 'struct timezone' to match the system's
88ae87de88Schristos    declaration of the second argument to gettimeofday. */
89ae87de88Schristos #define GETTIMEOFDAY_TIMEZONE void
90ae87de88Schristos 
91ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
92ae87de88Schristos    whether the gnulib module canonicalize-lgpl shall be considered present. */
93ae87de88Schristos #define GNULIB_CANONICALIZE_LGPL 1
94ae87de88Schristos 
95ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
96ae87de88Schristos    whether the gnulib module fdopendir shall be considered present. */
97ae87de88Schristos #define GNULIB_FDOPENDIR 1
98ae87de88Schristos 
99ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
100ae87de88Schristos    whether the gnulib module fd-safer-flag shall be considered present. */
101ae87de88Schristos #define GNULIB_FD_SAFER_FLAG 1
102ae87de88Schristos 
103ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
104ae87de88Schristos    whether the gnulib module fnmatch-gnu shall be considered present. */
105ae87de88Schristos #define GNULIB_FNMATCH_GNU 1
106ae87de88Schristos 
107ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
108ae87de88Schristos    whether the gnulib module fscanf shall be considered present. */
109ae87de88Schristos #define GNULIB_FSCANF 1
110ae87de88Schristos 
111ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
112ae87de88Schristos    whether the gnulib module getcwd shall be considered present. */
113ae87de88Schristos #define GNULIB_GETCWD 1
114ae87de88Schristos 
115ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
116ae87de88Schristos    whether the gnulib module isblank shall be considered present. */
117ae87de88Schristos #define GNULIB_ISBLANK 1
118ae87de88Schristos 
119ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
120ae87de88Schristos    whether the gnulib module lock shall be considered present. */
121ae87de88Schristos #define GNULIB_LOCK 1
122ae87de88Schristos 
123ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
124ae87de88Schristos    whether the gnulib module mkostemp shall be considered present. */
125ae87de88Schristos #define GNULIB_MKOSTEMP 1
126ae87de88Schristos 
127ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
128ae87de88Schristos    whether the gnulib module msvc-nothrow shall be considered present. */
129ae87de88Schristos #define GNULIB_MSVC_NOTHROW 1
130ae87de88Schristos 
131ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
132ae87de88Schristos    whether the gnulib module openat shall be considered present. */
133ae87de88Schristos #define GNULIB_OPENAT 1
134ae87de88Schristos 
135ae87de88Schristos /* Define to 1 if printf and friends should be labeled with attribute
136ae87de88Schristos    "__gnu_printf__" instead of "__printf__" */
137ae87de88Schristos /* #undef GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU */
138ae87de88Schristos 
139ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
140ae87de88Schristos    whether the gnulib module scanf shall be considered present. */
141ae87de88Schristos #define GNULIB_SCANF 1
142ae87de88Schristos 
143ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
144ae87de88Schristos    whether the gnulib module strerror shall be considered present. */
145ae87de88Schristos #define GNULIB_STRERROR 1
146ae87de88Schristos 
147ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
148ae87de88Schristos    whether the gnulib module strerror_r-posix shall be considered present. */
149ae87de88Schristos #define GNULIB_STRERROR_R_POSIX 1
150ae87de88Schristos 
151ae87de88Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
152ae87de88Schristos    whether the gnulib module tempname shall be considered present. */
153ae87de88Schristos #define GNULIB_TEMPNAME 1
154ae87de88Schristos 
155ae87de88Schristos /* Define to 1 when the gnulib module accept should be tested. */
156ae87de88Schristos #define GNULIB_TEST_ACCEPT 1
157ae87de88Schristos 
158ae87de88Schristos /* Define to 1 when the gnulib module bind should be tested. */
159ae87de88Schristos #define GNULIB_TEST_BIND 1
160ae87de88Schristos 
161ae87de88Schristos /* Define to 1 when the gnulib module btowc should be tested. */
162ae87de88Schristos #define GNULIB_TEST_BTOWC 1
163ae87de88Schristos 
164ae87de88Schristos /* Define to 1 when the gnulib module canonicalize_file_name should be tested.
165ae87de88Schristos    */
166ae87de88Schristos #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1
167ae87de88Schristos 
168ae87de88Schristos /* Define to 1 when the gnulib module chdir should be tested. */
169ae87de88Schristos #define GNULIB_TEST_CHDIR 1
170ae87de88Schristos 
171ae87de88Schristos /* Define to 1 when the gnulib module chown should be tested. */
172ae87de88Schristos #define GNULIB_TEST_CHOWN 1
173ae87de88Schristos 
174ae87de88Schristos /* Define to 1 when the gnulib module cloexec should be tested. */
175ae87de88Schristos #define GNULIB_TEST_CLOEXEC 1
176ae87de88Schristos 
177ae87de88Schristos /* Define to 1 when the gnulib module close should be tested. */
178ae87de88Schristos #define GNULIB_TEST_CLOSE 1
179ae87de88Schristos 
180ae87de88Schristos /* Define to 1 when the gnulib module closedir should be tested. */
181ae87de88Schristos #define GNULIB_TEST_CLOSEDIR 1
182ae87de88Schristos 
183ae87de88Schristos /* Define to 1 when the gnulib module connect should be tested. */
184ae87de88Schristos #define GNULIB_TEST_CONNECT 1
185ae87de88Schristos 
186ae87de88Schristos /* Define to 1 when the gnulib module dirfd should be tested. */
187ae87de88Schristos #define GNULIB_TEST_DIRFD 1
188ae87de88Schristos 
189ae87de88Schristos /* Define to 1 when the gnulib module dup should be tested. */
190ae87de88Schristos #define GNULIB_TEST_DUP 1
191ae87de88Schristos 
192ae87de88Schristos /* Define to 1 when the gnulib module dup2 should be tested. */
193ae87de88Schristos #define GNULIB_TEST_DUP2 1
194ae87de88Schristos 
195ae87de88Schristos /* Define to 1 when the gnulib module environ should be tested. */
196ae87de88Schristos #define GNULIB_TEST_ENVIRON 1
197ae87de88Schristos 
198ae87de88Schristos /* Define to 1 when the gnulib module fchdir should be tested. */
199ae87de88Schristos #define GNULIB_TEST_FCHDIR 1
200ae87de88Schristos 
201ae87de88Schristos /* Define to 1 when the gnulib module fcntl should be tested. */
202ae87de88Schristos #define GNULIB_TEST_FCNTL 1
203ae87de88Schristos 
204ae87de88Schristos /* Define to 1 when the gnulib module fdopendir should be tested. */
205ae87de88Schristos #define GNULIB_TEST_FDOPENDIR 1
206ae87de88Schristos 
207ae87de88Schristos /* Define to 1 when the gnulib module fgetc should be tested. */
208ae87de88Schristos #define GNULIB_TEST_FGETC 1
209ae87de88Schristos 
210ae87de88Schristos /* Define to 1 when the gnulib module fgets should be tested. */
211ae87de88Schristos #define GNULIB_TEST_FGETS 1
212ae87de88Schristos 
213ae87de88Schristos /* Define to 1 when the gnulib module fnmatch should be tested. */
214ae87de88Schristos #define GNULIB_TEST_FNMATCH 1
215ae87de88Schristos 
216ae87de88Schristos /* Define to 1 when the gnulib module fprintf should be tested. */
217ae87de88Schristos #define GNULIB_TEST_FPRINTF 1
218ae87de88Schristos 
219ae87de88Schristos /* Define to 1 when the gnulib module fputc should be tested. */
220ae87de88Schristos #define GNULIB_TEST_FPUTC 1
221ae87de88Schristos 
222ae87de88Schristos /* Define to 1 when the gnulib module fputs should be tested. */
223ae87de88Schristos #define GNULIB_TEST_FPUTS 1
224ae87de88Schristos 
225ae87de88Schristos /* Define to 1 when the gnulib module fread should be tested. */
226ae87de88Schristos #define GNULIB_TEST_FREAD 1
227ae87de88Schristos 
228ae87de88Schristos /* Define to 1 when the gnulib module free-posix should be tested. */
229ae87de88Schristos #define GNULIB_TEST_FREE_POSIX 1
230ae87de88Schristos 
231ae87de88Schristos /* Define to 1 when the gnulib module frexp should be tested. */
232ae87de88Schristos #define GNULIB_TEST_FREXP 1
233ae87de88Schristos 
234ae87de88Schristos /* Define to 1 when the gnulib module frexpl should be tested. */
235ae87de88Schristos #define GNULIB_TEST_FREXPL 1
236ae87de88Schristos 
237ae87de88Schristos /* Define to 1 when the gnulib module fscanf should be tested. */
238ae87de88Schristos #define GNULIB_TEST_FSCANF 1
239ae87de88Schristos 
240ae87de88Schristos /* Define to 1 when the gnulib module fstat should be tested. */
241ae87de88Schristos #define GNULIB_TEST_FSTAT 1
242ae87de88Schristos 
243ae87de88Schristos /* Define to 1 when the gnulib module fstatat should be tested. */
244ae87de88Schristos #define GNULIB_TEST_FSTATAT 1
245ae87de88Schristos 
246ae87de88Schristos /* Define to 1 when the gnulib module fwrite should be tested. */
247ae87de88Schristos #define GNULIB_TEST_FWRITE 1
248ae87de88Schristos 
249ae87de88Schristos /* Define to 1 when the gnulib module getc should be tested. */
250ae87de88Schristos #define GNULIB_TEST_GETC 1
251ae87de88Schristos 
252ae87de88Schristos /* Define to 1 when the gnulib module getchar should be tested. */
253ae87de88Schristos #define GNULIB_TEST_GETCHAR 1
254ae87de88Schristos 
255ae87de88Schristos /* Define to 1 when the gnulib module getcwd should be tested. */
256ae87de88Schristos #define GNULIB_TEST_GETCWD 1
257ae87de88Schristos 
258ae87de88Schristos /* Define to 1 when the gnulib module getdelim should be tested. */
259ae87de88Schristos #define GNULIB_TEST_GETDELIM 1
260ae87de88Schristos 
261ae87de88Schristos /* Define to 1 when the gnulib module getdtablesize should be tested. */
262ae87de88Schristos #define GNULIB_TEST_GETDTABLESIZE 1
263ae87de88Schristos 
264ae87de88Schristos /* Define to 1 when the gnulib module getline should be tested. */
265ae87de88Schristos #define GNULIB_TEST_GETLINE 1
266ae87de88Schristos 
267ae87de88Schristos /* Define to 1 when the gnulib module getlogin_r should be tested. */
268ae87de88Schristos #define GNULIB_TEST_GETLOGIN_R 1
269ae87de88Schristos 
270ae87de88Schristos /* Define to 1 when the gnulib module getrandom should be tested. */
271ae87de88Schristos #define GNULIB_TEST_GETRANDOM 1
272ae87de88Schristos 
273ae87de88Schristos /* Define to 1 when the gnulib module gettimeofday should be tested. */
274ae87de88Schristos #define GNULIB_TEST_GETTIMEOFDAY 1
275ae87de88Schristos 
276ae87de88Schristos /* Define to 1 when the gnulib module glob should be tested. */
277ae87de88Schristos #define GNULIB_TEST_GLOB 1
278ae87de88Schristos 
279ae87de88Schristos /* Define to 1 when the gnulib module listen should be tested. */
280ae87de88Schristos #define GNULIB_TEST_LISTEN 1
281ae87de88Schristos 
282ae87de88Schristos /* Define to 1 when the gnulib module lstat should be tested. */
283ae87de88Schristos #define GNULIB_TEST_LSTAT 1
284ae87de88Schristos 
285ae87de88Schristos /* Define to 1 when the gnulib module malloc-posix should be tested. */
286ae87de88Schristos #define GNULIB_TEST_MALLOC_POSIX 1
287ae87de88Schristos 
288ae87de88Schristos /* Define to 1 when the gnulib module mbrtowc should be tested. */
289ae87de88Schristos #define GNULIB_TEST_MBRTOWC 1
290ae87de88Schristos 
291ae87de88Schristos /* Define to 1 when the gnulib module mbsinit should be tested. */
292ae87de88Schristos #define GNULIB_TEST_MBSINIT 1
293ae87de88Schristos 
294ae87de88Schristos /* Define to 1 when the gnulib module mbsrtowcs should be tested. */
295ae87de88Schristos #define GNULIB_TEST_MBSRTOWCS 1
296ae87de88Schristos 
297ae87de88Schristos /* Define to 1 when the gnulib module mbtowc should be tested. */
298ae87de88Schristos #define GNULIB_TEST_MBTOWC 1
299ae87de88Schristos 
300ae87de88Schristos /* Define to 1 when the gnulib module memchr should be tested. */
301ae87de88Schristos #define GNULIB_TEST_MEMCHR 1
302ae87de88Schristos 
303ae87de88Schristos /* Define to 1 when the gnulib module memmem should be tested. */
304ae87de88Schristos #define GNULIB_TEST_MEMMEM 1
305ae87de88Schristos 
306ae87de88Schristos /* Define to 1 when the gnulib module mempcpy should be tested. */
307ae87de88Schristos #define GNULIB_TEST_MEMPCPY 1
308ae87de88Schristos 
309ae87de88Schristos /* Define to 1 when the gnulib module memrchr should be tested. */
310ae87de88Schristos #define GNULIB_TEST_MEMRCHR 1
311ae87de88Schristos 
312ae87de88Schristos /* Define to 1 when the gnulib module mkdir should be tested. */
313ae87de88Schristos #define GNULIB_TEST_MKDIR 1
314ae87de88Schristos 
315ae87de88Schristos /* Define to 1 when the gnulib module mkdtemp should be tested. */
316ae87de88Schristos #define GNULIB_TEST_MKDTEMP 1
317ae87de88Schristos 
318ae87de88Schristos /* Define to 1 when the gnulib module mkostemp should be tested. */
319ae87de88Schristos #define GNULIB_TEST_MKOSTEMP 1
320ae87de88Schristos 
321ae87de88Schristos /* Define to 1 when the gnulib module open should be tested. */
322ae87de88Schristos #define GNULIB_TEST_OPEN 1
323ae87de88Schristos 
324ae87de88Schristos /* Define to 1 when the gnulib module openat should be tested. */
325ae87de88Schristos #define GNULIB_TEST_OPENAT 1
326ae87de88Schristos 
327ae87de88Schristos /* Define to 1 when the gnulib module opendir should be tested. */
328ae87de88Schristos #define GNULIB_TEST_OPENDIR 1
329ae87de88Schristos 
330ae87de88Schristos /* Define to 1 when the gnulib module pipe should be tested. */
331ae87de88Schristos #define GNULIB_TEST_PIPE 1
332ae87de88Schristos 
333ae87de88Schristos /* Define to 1 when the gnulib module printf should be tested. */
334ae87de88Schristos #define GNULIB_TEST_PRINTF 1
335ae87de88Schristos 
336ae87de88Schristos /* Define to 1 when the gnulib module putc should be tested. */
337ae87de88Schristos #define GNULIB_TEST_PUTC 1
338ae87de88Schristos 
339ae87de88Schristos /* Define to 1 when the gnulib module putchar should be tested. */
340ae87de88Schristos #define GNULIB_TEST_PUTCHAR 1
341ae87de88Schristos 
342ae87de88Schristos /* Define to 1 when the gnulib module puts should be tested. */
343ae87de88Schristos #define GNULIB_TEST_PUTS 1
344ae87de88Schristos 
345ae87de88Schristos /* Define to 1 when the gnulib module rawmemchr should be tested. */
346ae87de88Schristos #define GNULIB_TEST_RAWMEMCHR 1
347ae87de88Schristos 
348ae87de88Schristos /* Define to 1 when the gnulib module readdir should be tested. */
349ae87de88Schristos #define GNULIB_TEST_READDIR 1
350ae87de88Schristos 
351ae87de88Schristos /* Define to 1 when the gnulib module readlink should be tested. */
352ae87de88Schristos #define GNULIB_TEST_READLINK 1
353ae87de88Schristos 
354ae87de88Schristos /* Define to 1 when the gnulib module realloc-posix should be tested. */
355ae87de88Schristos #define GNULIB_TEST_REALLOC_POSIX 1
356ae87de88Schristos 
357ae87de88Schristos /* Define to 1 when the gnulib module realpath should be tested. */
358ae87de88Schristos #define GNULIB_TEST_REALPATH 1
359ae87de88Schristos 
360ae87de88Schristos /* Define to 1 when the gnulib module rename should be tested. */
361ae87de88Schristos #define GNULIB_TEST_RENAME 1
362ae87de88Schristos 
363ae87de88Schristos /* Define to 1 when the gnulib module rewinddir should be tested. */
364ae87de88Schristos #define GNULIB_TEST_REWINDDIR 1
365ae87de88Schristos 
366ae87de88Schristos /* Define to 1 when the gnulib module rmdir should be tested. */
367ae87de88Schristos #define GNULIB_TEST_RMDIR 1
368ae87de88Schristos 
369ae87de88Schristos /* Define to 1 when the gnulib module scanf should be tested. */
370ae87de88Schristos #define GNULIB_TEST_SCANF 1
371ae87de88Schristos 
372ae87de88Schristos /* Define to 1 when the gnulib module select should be tested. */
373ae87de88Schristos #define GNULIB_TEST_SELECT 1
374ae87de88Schristos 
375ae87de88Schristos /* Define to 1 when the gnulib module setenv should be tested. */
376ae87de88Schristos #define GNULIB_TEST_SETENV 1
377ae87de88Schristos 
378ae87de88Schristos /* Define to 1 when the gnulib module setlocale_null should be tested. */
379ae87de88Schristos #define GNULIB_TEST_SETLOCALE_NULL 1
380ae87de88Schristos 
381ae87de88Schristos /* Define to 1 when the gnulib module setsockopt should be tested. */
382ae87de88Schristos #define GNULIB_TEST_SETSOCKOPT 1
383ae87de88Schristos 
384ae87de88Schristos /* Define to 1 when the gnulib module socket should be tested. */
385ae87de88Schristos #define GNULIB_TEST_SOCKET 1
386ae87de88Schristos 
387ae87de88Schristos /* Define to 1 when the gnulib module stat should be tested. */
388ae87de88Schristos #define GNULIB_TEST_STAT 1
389ae87de88Schristos 
390ae87de88Schristos /* Define to 1 when the gnulib module strchrnul should be tested. */
391ae87de88Schristos #define GNULIB_TEST_STRCHRNUL 1
392ae87de88Schristos 
393ae87de88Schristos /* Define to 1 when the gnulib module strdup should be tested. */
394ae87de88Schristos #define GNULIB_TEST_STRDUP 1
395ae87de88Schristos 
396ae87de88Schristos /* Define to 1 when the gnulib module strerror should be tested. */
397ae87de88Schristos #define GNULIB_TEST_STRERROR 1
398ae87de88Schristos 
399ae87de88Schristos /* Define to 1 when the gnulib module strerror_r should be tested. */
400ae87de88Schristos #define GNULIB_TEST_STRERROR_R 1
401ae87de88Schristos 
402ae87de88Schristos /* Define to 1 when the gnulib module strnlen should be tested. */
403ae87de88Schristos #define GNULIB_TEST_STRNLEN 1
404ae87de88Schristos 
405ae87de88Schristos /* Define to 1 when the gnulib module strstr should be tested. */
406ae87de88Schristos #define GNULIB_TEST_STRSTR 1
407ae87de88Schristos 
408ae87de88Schristos /* Define to 1 when the gnulib module strtok_r should be tested. */
409ae87de88Schristos #define GNULIB_TEST_STRTOK_R 1
410ae87de88Schristos 
411ae87de88Schristos /* Define to 1 when the gnulib module time_r should be tested. */
412ae87de88Schristos #define GNULIB_TEST_TIME_R 1
413ae87de88Schristos 
414ae87de88Schristos /* Define to 1 when the gnulib module unsetenv should be tested. */
415ae87de88Schristos #define GNULIB_TEST_UNSETENV 1
416ae87de88Schristos 
417ae87de88Schristos /* Define to 1 when the gnulib module vfprintf should be tested. */
418ae87de88Schristos #define GNULIB_TEST_VFPRINTF 1
419ae87de88Schristos 
420ae87de88Schristos /* Define to 1 when the gnulib module vprintf should be tested. */
421ae87de88Schristos #define GNULIB_TEST_VPRINTF 1
422ae87de88Schristos 
423ae87de88Schristos /* Define to 1 when the gnulib module wmemchr should be tested. */
424ae87de88Schristos #define GNULIB_TEST_WMEMCHR 1
425ae87de88Schristos 
426ae87de88Schristos /* Define to 1 when the gnulib module wmempcpy should be tested. */
427ae87de88Schristos #define GNULIB_TEST_WMEMPCPY 1
428ae87de88Schristos 
429ae87de88Schristos /* Define to 1 if you have 'alloca' after including <alloca.h>, a header that
430ae87de88Schristos    may be supplied by this distribution. */
431ae87de88Schristos #define HAVE_ALLOCA 1
432ae87de88Schristos 
433ae87de88Schristos /* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
434ae87de88Schristos    */
435ae87de88Schristos /* #undef HAVE_ALLOCA_H */
436ae87de88Schristos 
437ae87de88Schristos /* Define to 1 if you have the <arpa/inet.h> header file. */
438ae87de88Schristos #define HAVE_ARPA_INET_H 1
439ae87de88Schristos 
440ae87de88Schristos /* Define to 1 if you have the <bcrypt.h> header file. */
441ae87de88Schristos /* #undef HAVE_BCRYPT_H */
442ae87de88Schristos 
443ae87de88Schristos /* Define to 1 if you have the <bp-sym.h> header file. */
444ae87de88Schristos /* #undef HAVE_BP_SYM_H */
445ae87de88Schristos 
446ae87de88Schristos /* Define to 1 if you have the `btowc' function. */
447ae87de88Schristos #define HAVE_BTOWC 1
448ae87de88Schristos 
449ae87de88Schristos /* Define to 1 if you have the `canonicalize_file_name' function. */
450ae87de88Schristos /* #undef HAVE_CANONICALIZE_FILE_NAME */
451ae87de88Schristos 
452ae87de88Schristos /* Define to 1 if you have the `catgets' function. */
453ae87de88Schristos #define HAVE_CATGETS 1
454ae87de88Schristos 
455ae87de88Schristos /* Define to 1 if you have the `chown' function. */
456ae87de88Schristos #define HAVE_CHOWN 1
457ae87de88Schristos 
458ae87de88Schristos /* Define to 1 if you have the `clock_getres' function. */
459ae87de88Schristos #define HAVE_CLOCK_GETRES 1
460ae87de88Schristos 
461ae87de88Schristos /* Define to 1 if you have the `clock_gettime' function. */
462ae87de88Schristos #define HAVE_CLOCK_GETTIME 1
463ae87de88Schristos 
464ae87de88Schristos /* Define to 1 if you have the `clock_settime' function. */
465ae87de88Schristos #define HAVE_CLOCK_SETTIME 1
466ae87de88Schristos 
467ae87de88Schristos /* Define to 1 if you have the `closedir' function. */
468ae87de88Schristos #define HAVE_CLOSEDIR 1
469ae87de88Schristos 
470ae87de88Schristos /* Define to 1 if you have the <crtdefs.h> header file. */
471ae87de88Schristos /* #undef HAVE_CRTDEFS_H */
472ae87de88Schristos 
473ae87de88Schristos /* Define to 1 if C supports variable-length arrays. */
474ae87de88Schristos #define HAVE_C_VARARRAYS 1
475ae87de88Schristos 
476ae87de88Schristos /* Define to 1 if you have the declaration of `alarm', and to 0 if you don't.
477ae87de88Schristos    */
478ae87de88Schristos #define HAVE_DECL_ALARM 1
479ae87de88Schristos 
480ae87de88Schristos /* Define to 1 if you have the declaration of `dirfd', and to 0 if you don't.
481ae87de88Schristos    */
482ae87de88Schristos #define HAVE_DECL_DIRFD 1
483ae87de88Schristos 
484ae87de88Schristos /* Define to 1 if you have the declaration of `ecvt', and to 0 if you don't.
485ae87de88Schristos    */
486ae87de88Schristos #define HAVE_DECL_ECVT 0
487ae87de88Schristos 
488ae87de88Schristos /* Define to 1 if you have the declaration of `execvpe', and to 0 if you
489ae87de88Schristos    don't. */
490ae87de88Schristos #define HAVE_DECL_EXECVPE 1
491ae87de88Schristos 
492ae87de88Schristos /* Define to 1 if you have the declaration of `fchdir', and to 0 if you don't.
493ae87de88Schristos    */
494ae87de88Schristos #define HAVE_DECL_FCHDIR 1
495ae87de88Schristos 
496ae87de88Schristos /* Define to 1 if you have the declaration of `fcloseall', and to 0 if you
497ae87de88Schristos    don't. */
498ae87de88Schristos #define HAVE_DECL_FCLOSEALL 0
499ae87de88Schristos 
500ae87de88Schristos /* Define to 1 if you have the declaration of `fcvt', and to 0 if you don't.
501ae87de88Schristos    */
502ae87de88Schristos #define HAVE_DECL_FCVT 0
503ae87de88Schristos 
504ae87de88Schristos /* Define to 1 if you have the declaration of `fdopendir', and to 0 if you
505ae87de88Schristos    don't. */
506ae87de88Schristos #define HAVE_DECL_FDOPENDIR 1
507ae87de88Schristos 
508ae87de88Schristos /* Define to 1 if you have the declaration of `gcvt', and to 0 if you don't.
509ae87de88Schristos    */
510ae87de88Schristos #define HAVE_DECL_GCVT 0
511ae87de88Schristos 
512ae87de88Schristos /* Define to 1 if you have the declaration of `getcwd', and to 0 if you don't.
513ae87de88Schristos    */
514ae87de88Schristos #define HAVE_DECL_GETCWD 1
515ae87de88Schristos 
516ae87de88Schristos /* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
517ae87de88Schristos    don't. */
518ae87de88Schristos #define HAVE_DECL_GETC_UNLOCKED 1
519ae87de88Schristos 
520ae87de88Schristos /* Define to 1 if you have the declaration of `getdelim', and to 0 if you
521ae87de88Schristos    don't. */
522ae87de88Schristos #define HAVE_DECL_GETDELIM 1
523ae87de88Schristos 
524ae87de88Schristos /* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you
525ae87de88Schristos    don't. */
526ae87de88Schristos #define HAVE_DECL_GETDTABLESIZE 1
527ae87de88Schristos 
528ae87de88Schristos /* Define to 1 if you have the declaration of `getline', and to 0 if you
529ae87de88Schristos    don't. */
530ae87de88Schristos #define HAVE_DECL_GETLINE 1
531ae87de88Schristos 
532ae87de88Schristos /* Define to 1 if you have the declaration of `getlogin', and to 0 if you
533ae87de88Schristos    don't. */
534ae87de88Schristos #define HAVE_DECL_GETLOGIN 1
535ae87de88Schristos 
536ae87de88Schristos /* Define to 1 if you have the declaration of `getlogin_r', and to 0 if you
537ae87de88Schristos    don't. */
538ae87de88Schristos #define HAVE_DECL_GETLOGIN_R 1
539ae87de88Schristos 
540ae87de88Schristos /* Define to 1 if you have the declaration of `inet_ntop', and to 0 if you
541ae87de88Schristos    don't. */
542ae87de88Schristos #define HAVE_DECL_INET_NTOP 1
543ae87de88Schristos 
544ae87de88Schristos /* Define to 1 if you have the declaration of `localtime_r', and to 0 if you
545ae87de88Schristos    don't. */
546ae87de88Schristos #define HAVE_DECL_LOCALTIME_R 1
547ae87de88Schristos 
548ae87de88Schristos /* Define to 1 if you have the declaration of `mbrtowc', and to 0 if you
549ae87de88Schristos    don't. */
550ae87de88Schristos /* #undef HAVE_DECL_MBRTOWC */
551ae87de88Schristos 
552ae87de88Schristos /* Define to 1 if you have the declaration of `mbsinit', and to 0 if you
553ae87de88Schristos    don't. */
554ae87de88Schristos /* #undef HAVE_DECL_MBSINIT */
555ae87de88Schristos 
556ae87de88Schristos /* Define to 1 if you have the declaration of `mbsrtowcs', and to 0 if you
557ae87de88Schristos    don't. */
558ae87de88Schristos /* #undef HAVE_DECL_MBSRTOWCS */
559ae87de88Schristos 
560ae87de88Schristos /* Define to 1 if you have the declaration of `memmem', and to 0 if you don't.
561ae87de88Schristos    */
562ae87de88Schristos #define HAVE_DECL_MEMMEM 1
563ae87de88Schristos 
564ae87de88Schristos /* Define to 1 if you have the declaration of `memrchr', and to 0 if you
565ae87de88Schristos    don't. */
566ae87de88Schristos #define HAVE_DECL_MEMRCHR 1
567ae87de88Schristos 
568ae87de88Schristos /* Define to 1 if you have the declaration of `program_invocation_name', and
569ae87de88Schristos    to 0 if you don't. */
570ae87de88Schristos #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0
571ae87de88Schristos 
572ae87de88Schristos /* Define to 1 if you have the declaration of `program_invocation_short_name',
573ae87de88Schristos    and to 0 if you don't. */
574ae87de88Schristos #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0
575ae87de88Schristos 
576ae87de88Schristos /* Define to 1 if you have the declaration of `setenv', and to 0 if you don't.
577ae87de88Schristos    */
578ae87de88Schristos #define HAVE_DECL_SETENV 1
579ae87de88Schristos 
580ae87de88Schristos /* Define to 1 if you have the declaration of `strdup', and to 0 if you don't.
581ae87de88Schristos    */
582ae87de88Schristos #define HAVE_DECL_STRDUP 1
583ae87de88Schristos 
584ae87de88Schristos /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
585ae87de88Schristos    don't. */
586ae87de88Schristos #define HAVE_DECL_STRERROR_R 1
587ae87de88Schristos 
588ae87de88Schristos /* Define to 1 if you have the declaration of `strnlen', and to 0 if you
589ae87de88Schristos    don't. */
590ae87de88Schristos #define HAVE_DECL_STRNLEN 1
591ae87de88Schristos 
592ae87de88Schristos /* Define to 1 if you have the declaration of `strtok_r', and to 0 if you
593ae87de88Schristos    don't. */
594ae87de88Schristos #define HAVE_DECL_STRTOK_R 1
595ae87de88Schristos 
596ae87de88Schristos /* Define to 1 if you have the declaration of `towlower', and to 0 if you
597ae87de88Schristos    don't. */
598ae87de88Schristos /* #undef HAVE_DECL_TOWLOWER */
599ae87de88Schristos 
600ae87de88Schristos /* Define to 1 if you have the declaration of `unsetenv', and to 0 if you
601ae87de88Schristos    don't. */
602ae87de88Schristos #define HAVE_DECL_UNSETENV 1
603ae87de88Schristos 
604ae87de88Schristos /* Define to 1 if you have the declaration of `wcsdup', and to 0 if you don't.
605ae87de88Schristos    */
606ae87de88Schristos #define HAVE_DECL_WCSDUP 1
607ae87de88Schristos 
608ae87de88Schristos /* Define to 1 if you have the declaration of `__argv', and to 0 if you don't.
609ae87de88Schristos    */
610ae87de88Schristos #define HAVE_DECL___ARGV 0
611ae87de88Schristos 
612ae87de88Schristos /* Define to 1 if you have the <dirent.h> header file. */
613ae87de88Schristos #define HAVE_DIRENT_H 1
614ae87de88Schristos 
615ae87de88Schristos /* Define to 1 if you have the `dirfd' function. */
616ae87de88Schristos /* #undef HAVE_DIRFD */
617ae87de88Schristos 
618ae87de88Schristos /* Define to 1 if you have the <dlfcn.h> header file. */
619ae87de88Schristos #define HAVE_DLFCN_H 1
620ae87de88Schristos 
621ae87de88Schristos /* Define if you have the declaration of environ. */
622ae87de88Schristos /* #undef HAVE_ENVIRON_DECL */
623ae87de88Schristos 
624ae87de88Schristos /* Define to 1 if you have the `faccessat' function. */
625ae87de88Schristos #define HAVE_FACCESSAT 1
626ae87de88Schristos 
627ae87de88Schristos /* Define to 1 if you have the `fchdir' function. */
628ae87de88Schristos #define HAVE_FCHDIR 1
629ae87de88Schristos 
630ae87de88Schristos /* Define to 1 if you have the `fchown' function. */
631ae87de88Schristos #define HAVE_FCHOWN 1
632ae87de88Schristos 
633ae87de88Schristos /* Define to 1 if you have the `fcntl' function. */
634ae87de88Schristos #define HAVE_FCNTL 1
635ae87de88Schristos 
636ae87de88Schristos /* Define to 1 if you have the `fdopendir' function. */
637ae87de88Schristos #define HAVE_FDOPENDIR 1
638ae87de88Schristos 
639ae87de88Schristos /* Define to 1 if you have the <features.h> header file. */
640ae87de88Schristos /* #undef HAVE_FEATURES_H */
641ae87de88Schristos 
642ae87de88Schristos /* Define to 1 if you have the `flockfile' function. */
643ae87de88Schristos #define HAVE_FLOCKFILE 1
644ae87de88Schristos 
645ae87de88Schristos /* Define to 1 if you have the `fnmatch' function. */
646ae87de88Schristos #define HAVE_FNMATCH 1
647ae87de88Schristos 
648ae87de88Schristos /* Define to 1 if you have the <fnmatch.h> header file. */
649ae87de88Schristos #define HAVE_FNMATCH_H 1
650ae87de88Schristos 
651ae87de88Schristos /* Define if the 'free' function is guaranteed to preserve errno. */
652ae87de88Schristos /* #undef HAVE_FREE_POSIX */
653ae87de88Schristos 
654ae87de88Schristos /* Define if the frexp() function is available and works. */
655ae87de88Schristos /* #undef HAVE_FREXP */
656ae87de88Schristos 
657ae87de88Schristos /* Define if the frexpl() function is available. */
658ae87de88Schristos #define HAVE_FREXPL 1
659ae87de88Schristos 
660ae87de88Schristos /* Define to 1 if you have the `fstatat' function. */
661ae87de88Schristos #define HAVE_FSTATAT 1
662ae87de88Schristos 
663ae87de88Schristos /* Define to 1 if you have the `funlockfile' function. */
664ae87de88Schristos #define HAVE_FUNLOCKFILE 1
665ae87de88Schristos 
666ae87de88Schristos /* Define to 1 if you have the `getcwd' function. */
667ae87de88Schristos #define HAVE_GETCWD 1
668ae87de88Schristos 
669ae87de88Schristos /* Define to 1 if getcwd works, but with shorter paths than is generally
670ae87de88Schristos    tested with the replacement. */
671ae87de88Schristos /* #undef HAVE_GETCWD_SHORTER */
672ae87de88Schristos 
673ae87de88Schristos /* Define to 1 if you have the `getdelim' function. */
674ae87de88Schristos #define HAVE_GETDELIM 1
675ae87de88Schristos 
676ae87de88Schristos /* Define to 1 if you have the `getdtablesize' function. */
677ae87de88Schristos #define HAVE_GETDTABLESIZE 1
678ae87de88Schristos 
679ae87de88Schristos /* Define to 1 if you have the `getexecname' function. */
680ae87de88Schristos /* #undef HAVE_GETEXECNAME */
681ae87de88Schristos 
682ae87de88Schristos /* Define to 1 if you have the `getlogin_r' function. */
683ae87de88Schristos #define HAVE_GETLOGIN_R 1
684ae87de88Schristos 
685ae87de88Schristos /* Define to 1 if the system has the 'getpagesize' function. */
686ae87de88Schristos /* #undef HAVE_GETPAGESIZE */
687ae87de88Schristos 
688ae87de88Schristos /* Define to 1 if you have the `getprogname' function. */
689ae87de88Schristos #define HAVE_GETPROGNAME 1
690ae87de88Schristos 
691ae87de88Schristos /* Define to 1 if you have the `getpwnam_r' function. */
692ae87de88Schristos #define HAVE_GETPWNAM_R 1
693ae87de88Schristos 
694ae87de88Schristos /* Define to 1 if you have the `getrandom' function. */
695ae87de88Schristos #define HAVE_GETRANDOM 1
696ae87de88Schristos 
697ae87de88Schristos /* Define to 1 if you have the `gettimeofday' function. */
698ae87de88Schristos #define HAVE_GETTIMEOFDAY 1
699ae87de88Schristos 
700ae87de88Schristos /* Define to 1 if you have the `glob' function. */
701ae87de88Schristos #define HAVE_GLOB 1
702ae87de88Schristos 
703ae87de88Schristos /* Define to 1 if you have the <glob.h> header file. */
704ae87de88Schristos #define HAVE_GLOB_H 1
705ae87de88Schristos 
706ae87de88Schristos /* Define to 1 if you have the `glob_pattern_p' function. */
707ae87de88Schristos #define HAVE_GLOB_PATTERN_P 1
708ae87de88Schristos 
709ae87de88Schristos /* Define to 1 if you have the `inet_ntop' function. */
710ae87de88Schristos /* #undef HAVE_INET_NTOP */
711ae87de88Schristos 
712ae87de88Schristos /* Define to 1 if you have the <inttypes.h> header file. */
713ae87de88Schristos #define HAVE_INTTYPES_H 1
714ae87de88Schristos 
715ae87de88Schristos /* Define to 1 if <sys/socket.h> defines AF_INET. */
716ae87de88Schristos #define HAVE_IPV4 1
717ae87de88Schristos 
718ae87de88Schristos /* Define to 1 if <sys/socket.h> defines AF_INET6. */
719ae87de88Schristos #define HAVE_IPV6 1
720ae87de88Schristos 
721ae87de88Schristos /* Define to 1 if you have the `isblank' function. */
722ae87de88Schristos #define HAVE_ISBLANK 1
723ae87de88Schristos 
724ae87de88Schristos /* Define if the isnan(double) function is available in libc. */
725ae87de88Schristos #define HAVE_ISNAND_IN_LIBC 1
726ae87de88Schristos 
727ae87de88Schristos /* Define if the isnan(long double) function is available in libc. */
728ae87de88Schristos #define HAVE_ISNANL_IN_LIBC 1
729ae87de88Schristos 
730ae87de88Schristos /* Define to 1 if you have the `iswcntrl' function. */
731ae87de88Schristos #define HAVE_ISWCNTRL 1
732ae87de88Schristos 
733ae87de88Schristos /* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
734ae87de88Schristos #define HAVE_LANGINFO_CODESET 1
735ae87de88Schristos 
736ae87de88Schristos /* Define to 1 if the bcrypt library is guaranteed to be present. */
737ae87de88Schristos /* #undef HAVE_LIB_BCRYPT */
738ae87de88Schristos 
739ae87de88Schristos /* Define to 1 if you have the <limits.h> header file. */
740ae87de88Schristos #define HAVE_LIMITS_H 1
741ae87de88Schristos 
742ae87de88Schristos /* Define to 1 if you have the `link' function. */
743ae87de88Schristos #define HAVE_LINK 1
744ae87de88Schristos 
745ae87de88Schristos /* Define to 1 if you have the `localtime_r' function. */
746ae87de88Schristos #define HAVE_LOCALTIME_R 1
747ae87de88Schristos 
748ae87de88Schristos /* Define to 1 if the system has the type 'long long int'. */
749ae87de88Schristos #define HAVE_LONG_LONG_INT 1
750ae87de88Schristos 
751ae87de88Schristos /* Define to 1 if you have the `lstat' function. */
752ae87de88Schristos #define HAVE_LSTAT 1
753ae87de88Schristos 
754ae87de88Schristos /* Define if malloc, realloc, and calloc set errno on allocation failure. */
755ae87de88Schristos #define HAVE_MALLOC_POSIX 1
756ae87de88Schristos 
757ae87de88Schristos /* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including
758ae87de88Schristos    config.h and <sys/mman.h>. */
759ae87de88Schristos #define HAVE_MAP_ANONYMOUS 1
760ae87de88Schristos 
761ae87de88Schristos /* Define to 1 if you have the <math.h> header file. */
762ae87de88Schristos #define HAVE_MATH_H 1
763ae87de88Schristos 
764ae87de88Schristos /* Define to 1 if you have the `mbrtowc' function. */
765ae87de88Schristos #define HAVE_MBRTOWC 1
766ae87de88Schristos 
767ae87de88Schristos /* Define to 1 if you have the `mbsinit' function. */
768ae87de88Schristos #define HAVE_MBSINIT 1
769ae87de88Schristos 
770ae87de88Schristos /* Define to 1 if you have the `mbsrtowcs' function. */
771ae87de88Schristos #define HAVE_MBSRTOWCS 1
772ae87de88Schristos 
773ae87de88Schristos /* Define to 1 if <wchar.h> declares mbstate_t. */
774ae87de88Schristos #define HAVE_MBSTATE_T 1
775ae87de88Schristos 
776ae87de88Schristos /* Define to 1 if you have the `mbtowc' function. */
777ae87de88Schristos #define HAVE_MBTOWC 1
778ae87de88Schristos 
779ae87de88Schristos /* Define to 1 if you have the `memmem' function. */
780ae87de88Schristos #define HAVE_MEMMEM 1
781ae87de88Schristos 
782ae87de88Schristos /* Define to 1 if you have the <memory.h> header file. */
783ae87de88Schristos #define HAVE_MEMORY_H 1
784ae87de88Schristos 
785ae87de88Schristos /* Define to 1 if you have the `mempcpy' function. */
786ae87de88Schristos #define HAVE_MEMPCPY 1
787ae87de88Schristos 
788ae87de88Schristos /* Define to 1 if you have the `memrchr' function. */
789ae87de88Schristos #define HAVE_MEMRCHR 1
790ae87de88Schristos 
791ae87de88Schristos /* Define to 1 if getcwd minimally works, that is, its result can be trusted
792ae87de88Schristos    when it succeeds. */
793ae87de88Schristos /* #undef HAVE_MINIMALLY_WORKING_GETCWD */
794ae87de88Schristos 
795ae87de88Schristos /* Define to 1 if you have the <minix/config.h> header file. */
796ae87de88Schristos /* #undef HAVE_MINIX_CONFIG_H */
797ae87de88Schristos 
798ae87de88Schristos /* Define to 1 if <limits.h> defines the MIN and MAX macros. */
799ae87de88Schristos /* #undef HAVE_MINMAX_IN_LIMITS_H */
800ae87de88Schristos 
801ae87de88Schristos /* Define to 1 if <sys/param.h> defines the MIN and MAX macros. */
802ae87de88Schristos #define HAVE_MINMAX_IN_SYS_PARAM_H 1
803ae87de88Schristos 
804ae87de88Schristos /* Define to 1 if you have the `mkdtemp' function. */
805ae87de88Schristos #define HAVE_MKDTEMP 1
806ae87de88Schristos 
807ae87de88Schristos /* Define to 1 if you have the `mkostemp' function. */
808ae87de88Schristos #define HAVE_MKOSTEMP 1
809ae87de88Schristos 
810ae87de88Schristos /* Define to 1 if you have the `mprotect' function. */
811ae87de88Schristos #define HAVE_MPROTECT 1
812ae87de88Schristos 
813ae87de88Schristos /* Define to 1 on MSVC platforms that have the "invalid parameter handler"
814ae87de88Schristos    concept. */
815ae87de88Schristos /* #undef HAVE_MSVC_INVALID_PARAMETER_HANDLER */
816ae87de88Schristos 
817ae87de88Schristos /* Define to 1 if you have the <netdb.h> header file. */
818ae87de88Schristos #define HAVE_NETDB_H 1
819ae87de88Schristos 
820ae87de88Schristos /* Define to 1 if you have the <netinet/in.h> header file. */
821ae87de88Schristos #define HAVE_NETINET_IN_H 1
822ae87de88Schristos 
823ae87de88Schristos /* Define to 1 if you have the `openat' function. */
824ae87de88Schristos #define HAVE_OPENAT 1
825ae87de88Schristos 
826ae87de88Schristos /* Define to 1 if you have the `opendir' function. */
827ae87de88Schristos #define HAVE_OPENDIR 1
828ae87de88Schristos 
829ae87de88Schristos /* Define to 1 if getcwd works, except it sometimes fails when it shouldn't,
830ae87de88Schristos    setting errno to ERANGE, ENAMETOOLONG, or ENOENT. */
831ae87de88Schristos /* #undef HAVE_PARTLY_WORKING_GETCWD */
832ae87de88Schristos 
833ae87de88Schristos /* Define to 1 if you have the `pipe' function. */
834ae87de88Schristos #define HAVE_PIPE 1
835ae87de88Schristos 
836ae87de88Schristos /* Define if you have the <pthread.h> header and the POSIX threads API. */
837ae87de88Schristos #define HAVE_PTHREAD_API 1
838ae87de88Schristos 
839ae87de88Schristos /* Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE. */
840ae87de88Schristos #define HAVE_PTHREAD_MUTEX_RECURSIVE 1
841ae87de88Schristos 
842ae87de88Schristos /* Define if the POSIX multithreading library has read/write locks. */
843ae87de88Schristos #define HAVE_PTHREAD_RWLOCK 1
844ae87de88Schristos 
845ae87de88Schristos /* Define if the 'pthread_rwlock_rdlock' function prefers a writer to a
846ae87de88Schristos    reader. */
847ae87de88Schristos /* #undef HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER */
848ae87de88Schristos 
849ae87de88Schristos /* Define to 1 if you have the `rawmemchr' function. */
850ae87de88Schristos /* #undef HAVE_RAWMEMCHR */
851ae87de88Schristos 
852ae87de88Schristos /* Define to 1 if you have the `readdir' function. */
853ae87de88Schristos #define HAVE_READDIR 1
854ae87de88Schristos 
855ae87de88Schristos /* Define to 1 if you have the `readlink' function. */
856ae87de88Schristos #define HAVE_READLINK 1
857ae87de88Schristos 
858ae87de88Schristos /* Define to 1 if you have the `realpath' function. */
859ae87de88Schristos #define HAVE_REALPATH 1
860ae87de88Schristos 
861ae87de88Schristos /* Define to 1 if you have the `rewinddir' function. */
862ae87de88Schristos #define HAVE_REWINDDIR 1
863ae87de88Schristos 
864ae87de88Schristos /* Define to 1 if 'long double' and 'double' have the same representation. */
865ae87de88Schristos /* #undef HAVE_SAME_LONG_DOUBLE_AS_DOUBLE */
866ae87de88Schristos 
867ae87de88Schristos /* Define to 1 if the system has the type `sa_family_t'. */
868ae87de88Schristos #define HAVE_SA_FAMILY_T 1
869ae87de88Schristos 
870ae87de88Schristos /* Define to 1 if you have the <sdkddkver.h> header file. */
871ae87de88Schristos /* #undef HAVE_SDKDDKVER_H */
872ae87de88Schristos 
873ae87de88Schristos /* Define to 1 if you have the <search.h> header file. */
874ae87de88Schristos #define HAVE_SEARCH_H 1
875ae87de88Schristos 
876ae87de88Schristos /* Define to 1 if you have the `setdtablesize' function. */
877ae87de88Schristos /* #undef HAVE_SETDTABLESIZE */
878ae87de88Schristos 
879ae87de88Schristos /* Define to 1 if you have the `setenv' function. */
880ae87de88Schristos #define HAVE_SETENV 1
881ae87de88Schristos 
882ae87de88Schristos /* Define to 1 if you have the `shutdown' function. */
883ae87de88Schristos #define HAVE_SHUTDOWN 1
884ae87de88Schristos 
885ae87de88Schristos /* Define to 1 if 'sig_atomic_t' is a signed integer type. */
886ae87de88Schristos #define HAVE_SIGNED_SIG_ATOMIC_T 1
887ae87de88Schristos 
888ae87de88Schristos /* Define to 1 if 'wchar_t' is a signed integer type. */
889ae87de88Schristos #define HAVE_SIGNED_WCHAR_T 1
890ae87de88Schristos 
891ae87de88Schristos /* Define to 1 if 'wint_t' is a signed integer type. */
892ae87de88Schristos #define HAVE_SIGNED_WINT_T 1
893ae87de88Schristos 
894ae87de88Schristos /* Define to 1 if the system has the type `sigset_t'. */
895ae87de88Schristos #define HAVE_SIGSET_T 1
896ae87de88Schristos 
897ae87de88Schristos /* Define to 1 if you have the `snprintf' function. */
898ae87de88Schristos #define HAVE_SNPRINTF 1
899ae87de88Schristos 
900ae87de88Schristos /* Define to 1 if you have the <stdint.h> header file. */
901ae87de88Schristos #define HAVE_STDINT_H 1
902ae87de88Schristos 
903ae87de88Schristos /* Define to 1 if you have the <stdlib.h> header file. */
904ae87de88Schristos #define HAVE_STDLIB_H 1
905ae87de88Schristos 
906ae87de88Schristos /* Define to 1 if you have the `strchrnul' function. */
907ae87de88Schristos #define HAVE_STRCHRNUL 1
908ae87de88Schristos 
909ae87de88Schristos /* Define to 1 if you have the `strerror_r' function. */
910ae87de88Schristos #define HAVE_STRERROR_R 1
911ae87de88Schristos 
912ae87de88Schristos /* Define to 1 if you have the <strings.h> header file. */
913ae87de88Schristos #define HAVE_STRINGS_H 1
914ae87de88Schristos 
915ae87de88Schristos /* Define to 1 if you have the <string.h> header file. */
916ae87de88Schristos #define HAVE_STRING_H 1
917ae87de88Schristos 
918ae87de88Schristos /* Define to 1 if you have the `strtok_r' function. */
919ae87de88Schristos #define HAVE_STRTOK_R 1
920ae87de88Schristos 
921ae87de88Schristos /* Define if there is a member named d_type in the struct describing directory
922ae87de88Schristos    headers. */
923ae87de88Schristos #define HAVE_STRUCT_DIRENT_D_TYPE 1
924ae87de88Schristos 
925ae87de88Schristos /* Define to 1 if the system has the type `struct sockaddr_storage'. */
926ae87de88Schristos #define HAVE_STRUCT_SOCKADDR_STORAGE 1
927ae87de88Schristos 
928ae87de88Schristos /* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */
929ae87de88Schristos #define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1
930ae87de88Schristos 
931ae87de88Schristos /* Define to 1 if `st_atimensec' is a member of `struct stat'. */
932ae87de88Schristos /* #undef HAVE_STRUCT_STAT_ST_ATIMENSEC */
933ae87de88Schristos 
934ae87de88Schristos /* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */
935ae87de88Schristos /* #undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC */
936ae87de88Schristos 
937ae87de88Schristos /* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */
938ae87de88Schristos /* #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC */
939ae87de88Schristos 
940ae87de88Schristos /* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */
941ae87de88Schristos #define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1
942ae87de88Schristos 
943ae87de88Schristos /* Define to 1 if `st_birthtimensec' is a member of `struct stat'. */
944ae87de88Schristos /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC */
945ae87de88Schristos 
946ae87de88Schristos /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */
947ae87de88Schristos #define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1
948ae87de88Schristos 
949ae87de88Schristos /* Define to 1 if `st_birthtim.tv_nsec' is a member of `struct stat'. */
950ae87de88Schristos /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC */
951ae87de88Schristos 
952ae87de88Schristos /* Define to 1 if you have the `symlink' function. */
953ae87de88Schristos #define HAVE_SYMLINK 1
954ae87de88Schristos 
955ae87de88Schristos /* Define to 1 if you have the <sys/bitypes.h> header file. */
956ae87de88Schristos /* #undef HAVE_SYS_BITYPES_H */
957ae87de88Schristos 
958ae87de88Schristos /* Define to 1 if you have the <sys/inttypes.h> header file. */
959ae87de88Schristos #define HAVE_SYS_INTTYPES_H 1
960ae87de88Schristos 
961ae87de88Schristos /* Define to 1 if you have the <sys/mman.h> header file. */
962ae87de88Schristos #define HAVE_SYS_MMAN_H 1
963ae87de88Schristos 
964ae87de88Schristos /* Define to 1 if you have the <sys/param.h> header file. */
965ae87de88Schristos #define HAVE_SYS_PARAM_H 1
966ae87de88Schristos 
967ae87de88Schristos /* Define to 1 if you have the <sys/random.h> header file. */
968ae87de88Schristos #define HAVE_SYS_RANDOM_H 1
969ae87de88Schristos 
970ae87de88Schristos /* Define to 1 if you have the <sys/select.h> header file. */
971ae87de88Schristos #define HAVE_SYS_SELECT_H 1
972ae87de88Schristos 
973ae87de88Schristos /* Define to 1 if you have the <sys/socket.h> header file. */
974ae87de88Schristos #define HAVE_SYS_SOCKET_H 1
975ae87de88Schristos 
976ae87de88Schristos /* Define to 1 if you have the <sys/stat.h> header file. */
977ae87de88Schristos #define HAVE_SYS_STAT_H 1
978ae87de88Schristos 
979ae87de88Schristos /* Define to 1 if you have the <sys/time.h> header file. */
980ae87de88Schristos #define HAVE_SYS_TIME_H 1
981ae87de88Schristos 
982ae87de88Schristos /* Define to 1 if you have the <sys/types.h> header file. */
983ae87de88Schristos #define HAVE_SYS_TYPES_H 1
984ae87de88Schristos 
985ae87de88Schristos /* Define to 1 if you have the <sys/uio.h> header file. */
986ae87de88Schristos #define HAVE_SYS_UIO_H 1
987ae87de88Schristos 
988ae87de88Schristos /* Define to 1 if you have the <sys/wait.h> header file. */
989ae87de88Schristos #define HAVE_SYS_WAIT_H 1
990ae87de88Schristos 
991ae87de88Schristos /* Define to 1 if you have the `thrd_create' function. */
992ae87de88Schristos /* #undef HAVE_THRD_CREATE */
993ae87de88Schristos 
994ae87de88Schristos /* Define to 1 if you have the <threads.h> header file. */
995ae87de88Schristos #define HAVE_THREADS_H 1
996ae87de88Schristos 
997ae87de88Schristos /* Define to 1 if you have the `towlower' function. */
998ae87de88Schristos #define HAVE_TOWLOWER 1
999ae87de88Schristos 
1000ae87de88Schristos /* Define to 1 if you have the `tsearch' function. */
1001ae87de88Schristos #define HAVE_TSEARCH 1
1002ae87de88Schristos 
1003ae87de88Schristos /* Define to 1 if you have the <unistd.h> header file. */
1004ae87de88Schristos #define HAVE_UNISTD_H 1
1005ae87de88Schristos 
1006ae87de88Schristos /* Define to 1 if you have the `unsetenv' function. */
1007ae87de88Schristos #define HAVE_UNSETENV 1
1008ae87de88Schristos 
1009ae87de88Schristos /* Define to 1 if the system has the type 'unsigned long long int'. */
1010ae87de88Schristos #define HAVE_UNSIGNED_LONG_LONG_INT 1
1011ae87de88Schristos 
1012ae87de88Schristos /* Define if you have a global __progname variable */
1013ae87de88Schristos #define HAVE_VAR___PROGNAME 1
1014ae87de88Schristos 
1015ae87de88Schristos /* Define to 1 or 0, depending whether the compiler supports simple visibility
1016ae87de88Schristos    declarations. */
1017ae87de88Schristos #define HAVE_VISIBILITY 1
1018ae87de88Schristos 
1019ae87de88Schristos /* Define to 1 if you have the <wchar.h> header file. */
1020ae87de88Schristos #define HAVE_WCHAR_H 1
1021ae87de88Schristos 
1022ae87de88Schristos /* Define if you have the 'wchar_t' type. */
1023ae87de88Schristos #define HAVE_WCHAR_T 1
1024ae87de88Schristos 
1025ae87de88Schristos /* Define to 1 if you have the <wctype.h> header file. */
1026ae87de88Schristos #define HAVE_WCTYPE_H 1
1027ae87de88Schristos 
1028ae87de88Schristos /* Define to 1 if the compiler and linker support weak declarations of
1029ae87de88Schristos    symbols. */
1030ae87de88Schristos #define HAVE_WEAK_SYMBOLS 1
1031ae87de88Schristos 
1032ae87de88Schristos /* Define to 1 if you have the <windows.h> header file. */
1033ae87de88Schristos /* #undef HAVE_WINDOWS_H */
1034ae87de88Schristos 
1035ae87de88Schristos /* Define to 1 if you have the <winsock2.h> header file. */
1036ae87de88Schristos /* #undef HAVE_WINSOCK2_H */
1037ae87de88Schristos 
1038ae87de88Schristos /* Define if you have the 'wint_t' type. */
1039ae87de88Schristos #define HAVE_WINT_T 1
1040ae87de88Schristos 
1041ae87de88Schristos /* Define to 1 if you have the `wmempcpy' function. */
1042ae87de88Schristos #define HAVE_WMEMPCPY 1
1043ae87de88Schristos 
1044ae87de88Schristos /* Define to 1 if fstatat (..., 0) works. For example, it does not work in AIX
1045ae87de88Schristos    7.1. */
1046ae87de88Schristos #define HAVE_WORKING_FSTATAT_ZERO_FLAG 1
1047ae87de88Schristos 
1048ae87de88Schristos /* Define to 1 if O_NOATIME works. */
1049ae87de88Schristos #define HAVE_WORKING_O_NOATIME 0
1050ae87de88Schristos 
1051ae87de88Schristos /* Define to 1 if O_NOFOLLOW works. */
1052ae87de88Schristos #define HAVE_WORKING_O_NOFOLLOW 0
1053ae87de88Schristos 
1054ae87de88Schristos /* Define to 1 if you have the <ws2tcpip.h> header file. */
1055ae87de88Schristos /* #undef HAVE_WS2TCPIP_H */
1056ae87de88Schristos 
1057ae87de88Schristos /* Define to 1 if you have the <xlocale.h> header file. */
1058ae87de88Schristos /* #undef HAVE_XLOCALE_H */
1059ae87de88Schristos 
1060ae87de88Schristos /* Define to 1 if the system has the type `_Bool'. */
1061ae87de88Schristos #define HAVE__BOOL 1
1062ae87de88Schristos 
1063ae87de88Schristos /* Define to 1 if you have the `_set_invalid_parameter_handler' function. */
1064ae87de88Schristos /* #undef HAVE__SET_INVALID_PARAMETER_HANDLER */
1065ae87de88Schristos 
1066ae87de88Schristos /* Define to 1 if the compiler supports __builtin_expect,
1067ae87de88Schristos    and to 2 if <builtins.h> does.  */
1068ae87de88Schristos #define HAVE___BUILTIN_EXPECT 1
1069ae87de88Schristos #ifndef HAVE___BUILTIN_EXPECT
1070ae87de88Schristos # define __builtin_expect(e, c) (e)
1071ae87de88Schristos #elif HAVE___BUILTIN_EXPECT == 2
1072ae87de88Schristos # include <builtins.h>
1073ae87de88Schristos #endif
1074ae87de88Schristos 
1075ae87de88Schristos 
1076ae87de88Schristos /* Define to 1 if ctype.h defines __header_inline. */
1077ae87de88Schristos /* #undef HAVE___HEADER_INLINE */
1078ae87de88Schristos 
1079ae87de88Schristos /* Please see the Gnulib manual for how to use these macros.
1080ae87de88Schristos 
1081ae87de88Schristos    Suppress extern inline with HP-UX cc, as it appears to be broken; see
1082ae87de88Schristos    <https://lists.gnu.org/r/bug-texinfo/2013-02/msg00030.html>.
1083ae87de88Schristos 
1084ae87de88Schristos    Suppress extern inline with Sun C in standards-conformance mode, as it
1085ae87de88Schristos    mishandles inline functions that call each other.  E.g., for 'inline void f
1086ae87de88Schristos    (void) { } inline void g (void) { f (); }', c99 incorrectly complains
1087ae87de88Schristos    'reference to static identifier "f" in extern inline function'.
1088ae87de88Schristos    This bug was observed with Oracle Developer Studio 12.6
1089ae87de88Schristos    (Sun C 5.15 SunOS_sparc 2017/05/30).
1090ae87de88Schristos 
1091ae87de88Schristos    Suppress extern inline (with or without __attribute__ ((__gnu_inline__)))
1092ae87de88Schristos    on configurations that mistakenly use 'static inline' to implement
1093ae87de88Schristos    functions or macros in standard C headers like <ctype.h>.  For example,
1094ae87de88Schristos    if isdigit is mistakenly implemented via a static inline function,
1095ae87de88Schristos    a program containing an extern inline function that calls isdigit
1096ae87de88Schristos    may not work since the C standard prohibits extern inline functions
1097ae87de88Schristos    from calling static functions (ISO C 99 section 6.7.4.(3).
1098ae87de88Schristos    This bug is known to occur on:
1099ae87de88Schristos 
1100ae87de88Schristos      OS X 10.8 and earlier; see:
1101ae87de88Schristos      https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
1102ae87de88Schristos 
1103ae87de88Schristos      DragonFly; see
1104ae87de88Schristos      http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
1105ae87de88Schristos 
1106ae87de88Schristos      FreeBSD; see:
1107ae87de88Schristos      https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
1108ae87de88Schristos 
1109ae87de88Schristos    OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
1110ae87de88Schristos    for clang but remains for g++; see <https://trac.macports.org/ticket/41033>.
1111ae87de88Schristos    Assume DragonFly and FreeBSD will be similar.
1112ae87de88Schristos 
1113ae87de88Schristos    GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
1114ae87de88Schristos    inline semantics, unless -fgnu89-inline is used.  It defines a macro
1115ae87de88Schristos    __GNUC_STDC_INLINE__ to indicate this situation or a macro
1116ae87de88Schristos    __GNUC_GNU_INLINE__ to indicate the opposite situation.
1117ae87de88Schristos    GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline
1118ae87de88Schristos    semantics but warns, unless -fgnu89-inline is used:
1119ae87de88Schristos      warning: C99 inline functions are not supported; using GNU89
1120ae87de88Schristos      warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute
1121ae87de88Schristos    It defines a macro __GNUC_GNU_INLINE__ to indicate this situation.
1122ae87de88Schristos  */
1123ae87de88Schristos #if (((defined __APPLE__ && defined __MACH__) \
1124ae87de88Schristos       || defined __DragonFly__ || defined __FreeBSD__) \
1125ae87de88Schristos      && (defined HAVE___HEADER_INLINE \
1126ae87de88Schristos          ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \
1127ae87de88Schristos             && ! defined __clang__) \
1128ae87de88Schristos          : ((! defined _DONT_USE_CTYPE_INLINE_ \
1129ae87de88Schristos              && (defined __GNUC__ || defined __cplusplus)) \
1130ae87de88Schristos             || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
1131ae87de88Schristos                 && defined __GNUC__ && ! defined __cplusplus))))
1132ae87de88Schristos # define _GL_EXTERN_INLINE_STDHEADER_BUG
1133ae87de88Schristos #endif
1134ae87de88Schristos #if ((__GNUC__ \
1135ae87de88Schristos       ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
1136ae87de88Schristos       : (199901L <= __STDC_VERSION__ \
1137ae87de88Schristos          && !defined __HP_cc \
1138ae87de88Schristos          && !defined __PGI \
1139ae87de88Schristos          && !(defined __SUNPRO_C && __STDC__))) \
1140ae87de88Schristos      && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
1141ae87de88Schristos # define _GL_INLINE inline
1142ae87de88Schristos # define _GL_EXTERN_INLINE extern inline
1143ae87de88Schristos # define _GL_EXTERN_INLINE_IN_USE
1144ae87de88Schristos #elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
1145ae87de88Schristos        && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
1146ae87de88Schristos # if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__
1147ae87de88Schristos    /* __gnu_inline__ suppresses a GCC 4.2 diagnostic.  */
1148ae87de88Schristos #  define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
1149ae87de88Schristos # else
1150ae87de88Schristos #  define _GL_INLINE extern inline
1151ae87de88Schristos # endif
1152ae87de88Schristos # define _GL_EXTERN_INLINE extern
1153ae87de88Schristos # define _GL_EXTERN_INLINE_IN_USE
1154ae87de88Schristos #else
1155ae87de88Schristos # define _GL_INLINE _GL_UNUSED static
1156ae87de88Schristos # define _GL_EXTERN_INLINE _GL_UNUSED static
1157ae87de88Schristos #endif
1158ae87de88Schristos 
1159ae87de88Schristos /* In GCC 4.6 (inclusive) to 5.1 (exclusive),
1160ae87de88Schristos    suppress bogus "no previous prototype for 'FOO'"
1161ae87de88Schristos    and "no previous declaration for 'FOO'" diagnostics,
1162ae87de88Schristos    when FOO is an inline function in the header; see
1163ae87de88Schristos    <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and
1164ae87de88Schristos    <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>.  */
1165ae87de88Schristos #if __GNUC__ == 4 && 6 <= __GNUC_MINOR__
1166ae87de88Schristos # if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__
1167ae87de88Schristos #  define _GL_INLINE_HEADER_CONST_PRAGMA
1168ae87de88Schristos # else
1169ae87de88Schristos #  define _GL_INLINE_HEADER_CONST_PRAGMA \
1170ae87de88Schristos      _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"")
1171ae87de88Schristos # endif
1172ae87de88Schristos # define _GL_INLINE_HEADER_BEGIN \
1173ae87de88Schristos     _Pragma ("GCC diagnostic push") \
1174ae87de88Schristos     _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \
1175ae87de88Schristos     _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \
1176ae87de88Schristos     _GL_INLINE_HEADER_CONST_PRAGMA
1177ae87de88Schristos # define _GL_INLINE_HEADER_END \
1178ae87de88Schristos     _Pragma ("GCC diagnostic pop")
1179ae87de88Schristos #else
1180ae87de88Schristos # define _GL_INLINE_HEADER_BEGIN
1181ae87de88Schristos # define _GL_INLINE_HEADER_END
1182ae87de88Schristos #endif
1183ae87de88Schristos 
1184ae87de88Schristos /* Define to 1 if the compiler supports the keyword '__inline'. */
1185ae87de88Schristos #define HAVE___INLINE 1
1186ae87de88Schristos 
1187ae87de88Schristos /* Define to 1 if you have the `__xpg_strerror_r' function. */
1188ae87de88Schristos /* #undef HAVE___XPG_STRERROR_R */
1189ae87de88Schristos 
1190ae87de88Schristos /* Define as the bit index in the word where to find bit 0 of the exponent of
1191ae87de88Schristos    'long double'. */
1192ae87de88Schristos /* #undef LDBL_EXPBIT0_BIT */
1193ae87de88Schristos 
1194ae87de88Schristos /* Define as the word index where to find the exponent of 'long double'. */
1195ae87de88Schristos /* #undef LDBL_EXPBIT0_WORD */
1196ae87de88Schristos 
1197ae87de88Schristos /* Define to 1 if 'lstat' dereferences a symlink specified with a trailing
1198ae87de88Schristos    slash. */
1199ae87de88Schristos /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */
1200ae87de88Schristos 
1201ae87de88Schristos /* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */
1202ae87de88Schristos #define MALLOC_0_IS_NONNULL 1
1203ae87de88Schristos 
1204ae87de88Schristos /* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */
1205ae87de88Schristos /* #undef MAP_ANONYMOUS */
1206ae87de88Schristos 
1207ae87de88Schristos /* Define if the mbrtowc function does not return (size_t) -2 for empty input.
1208ae87de88Schristos    */
1209ae87de88Schristos /* #undef MBRTOWC_EMPTY_INPUT_BUG */
1210ae87de88Schristos 
1211ae87de88Schristos /* Define if the mbrtowc function may signal encoding errors in the C locale.
1212ae87de88Schristos    */
1213ae87de88Schristos #define MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ 1
1214ae87de88Schristos 
1215ae87de88Schristos /* Define if the mbrtowc function has the NULL pwc argument bug. */
1216ae87de88Schristos /* #undef MBRTOWC_NULL_ARG1_BUG */
1217ae87de88Schristos 
1218ae87de88Schristos /* Define if the mbrtowc function has the NULL string argument bug. */
1219ae87de88Schristos /* #undef MBRTOWC_NULL_ARG2_BUG */
1220ae87de88Schristos 
1221ae87de88Schristos /* Define if the mbrtowc function does not return 0 for a NUL character. */
1222ae87de88Schristos /* #undef MBRTOWC_NUL_RETVAL_BUG */
1223ae87de88Schristos 
1224ae87de88Schristos /* Define if the mbrtowc function returns a wrong return value. */
1225ae87de88Schristos /* #undef MBRTOWC_RETVAL_BUG */
1226ae87de88Schristos 
1227ae87de88Schristos /* Define if the mbrtowc function stores a wide character when reporting
1228ae87de88Schristos    incomplete input. */
1229ae87de88Schristos /* #undef MBRTOWC_STORES_INCOMPLETE_BUG */
1230ae87de88Schristos 
1231ae87de88Schristos /* Use GNU style printf and scanf.  */
1232ae87de88Schristos #ifndef __USE_MINGW_ANSI_STDIO
1233ae87de88Schristos # define __USE_MINGW_ANSI_STDIO 1
1234ae87de88Schristos #endif
1235ae87de88Schristos 
1236ae87de88Schristos 
1237ae87de88Schristos /* Define to 1 if open() fails to recognize a trailing slash. */
1238ae87de88Schristos /* #undef OPEN_TRAILING_SLASH_BUG */
1239ae87de88Schristos 
1240ae87de88Schristos /* Define to the address where bug reports for this package should be sent. */
1241ae87de88Schristos #define PACKAGE_BUGREPORT ""
1242ae87de88Schristos 
1243ae87de88Schristos /* Define to the full name of this package. */
1244ae87de88Schristos #define PACKAGE_NAME "libgnu"
1245ae87de88Schristos 
1246ae87de88Schristos /* Define to the full name and version of this package. */
1247ae87de88Schristos #define PACKAGE_STRING "libgnu UNUSED-VERSION"
1248ae87de88Schristos 
1249ae87de88Schristos /* Define to the one symbol short name of this package. */
1250ae87de88Schristos #define PACKAGE_TARNAME "libgnu"
1251ae87de88Schristos 
1252ae87de88Schristos /* Define to the home page for this package. */
1253ae87de88Schristos #define PACKAGE_URL ""
1254ae87de88Schristos 
1255ae87de88Schristos /* Define to the version of this package. */
1256ae87de88Schristos #define PACKAGE_VERSION "UNUSED-VERSION"
1257ae87de88Schristos 
1258ae87de88Schristos /* Define to the type that is the result of default argument promotions of
1259ae87de88Schristos    type mode_t. */
1260ae87de88Schristos #define PROMOTED_MODE_T mode_t
1261ae87de88Schristos 
1262ae87de88Schristos /* Define if the pthread_in_use() detection is hard. */
1263ae87de88Schristos /* #undef PTHREAD_IN_USE_DETECTION_HARD */
1264ae87de88Schristos 
1265ae87de88Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1266ae87de88Schristos    'ptrdiff_t'. */
1267ae87de88Schristos #define PTRDIFF_T_SUFFIX l
1268ae87de88Schristos 
1269ae87de88Schristos /* Define to 1 if readlink fails to recognize a trailing slash. */
1270ae87de88Schristos #define READLINK_TRAILING_SLASH_BUG 1
1271ae87de88Schristos 
1272ae87de88Schristos /* Define to 1 if readlink sets errno instead of truncating a too-long link.
1273ae87de88Schristos    */
1274ae87de88Schristos #define READLINK_TRUNCATE_BUG 1
1275ae87de88Schristos 
1276ae87de88Schristos /* Define if rename does not work when the destination file exists, as on
1277ae87de88Schristos    Cygwin 1.5 or Windows. */
1278*800f65cfSrin /* #undef RENAME_DEST_EXISTS_BUG */
1279ae87de88Schristos 
1280ae87de88Schristos /* Define if rename fails to leave hard links alone, as on NetBSD 1.6 or
1281ae87de88Schristos    Cygwin 1.5. */
1282*800f65cfSrin /* #undef RENAME_HARD_LINK_BUG */
1283ae87de88Schristos 
1284ae87de88Schristos /* Define if rename does not correctly handle slashes on the destination
1285ae87de88Schristos    argument, such as on Solaris 11 or NetBSD 1.6. */
1286*800f65cfSrin /* #undef RENAME_TRAILING_SLASH_DEST_BUG */
1287ae87de88Schristos 
1288ae87de88Schristos /* Define if rename does not correctly handle slashes on the source argument,
1289ae87de88Schristos    such as on Solaris 9 or cygwin 1.5. */
1290*800f65cfSrin /* #undef RENAME_TRAILING_SLASH_SOURCE_BUG */
1291ae87de88Schristos 
1292ae87de88Schristos /* Define to 1 if gnulib's dirfd() replacement is used. */
1293ae87de88Schristos /* #undef REPLACE_DIRFD */
1294ae87de88Schristos 
1295ae87de88Schristos /* Define to 1 if gnulib's fchdir() replacement is used. */
1296ae87de88Schristos /* #undef REPLACE_FCHDIR */
1297ae87de88Schristos 
1298ae87de88Schristos /* Define to 1 if stat needs help when passed a file name with a trailing
1299ae87de88Schristos    slash */
1300ae87de88Schristos #define REPLACE_FUNC_STAT_FILE 1
1301ae87de88Schristos 
1302ae87de88Schristos /* Define to 1 if open() should work around the inability to open a directory.
1303ae87de88Schristos    */
1304ae87de88Schristos /* #undef REPLACE_OPEN_DIRECTORY */
1305ae87de88Schristos 
1306ae87de88Schristos /* Define to 1 if strerror(0) does not return a message implying success. */
1307ae87de88Schristos #define REPLACE_STRERROR_0 1
1308ae87de88Schristos 
1309ae87de88Schristos /* Define to 1 if setlocale (LC_ALL, NULL) is multithread-safe. */
1310ae87de88Schristos #define SETLOCALE_NULL_ALL_MTSAFE 0
1311ae87de88Schristos 
1312ae87de88Schristos /* Define to 1 if setlocale (category, NULL) is multithread-safe. */
1313ae87de88Schristos #define SETLOCALE_NULL_ONE_MTSAFE 1
1314ae87de88Schristos 
1315ae87de88Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1316ae87de88Schristos    'sig_atomic_t'. */
1317ae87de88Schristos #define SIG_ATOMIC_T_SUFFIX l
1318ae87de88Schristos 
1319ae87de88Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1320ae87de88Schristos    'size_t'. */
1321ae87de88Schristos #define SIZE_T_SUFFIX ul
1322ae87de88Schristos 
1323ae87de88Schristos /* If using the C implementation of alloca, define if you know the
1324ae87de88Schristos    direction of stack growth for your system; otherwise it will be
1325ae87de88Schristos    automatically deduced at runtime.
1326ae87de88Schristos         STACK_DIRECTION > 0 => grows toward higher addresses
1327ae87de88Schristos         STACK_DIRECTION < 0 => grows toward lower addresses
1328ae87de88Schristos         STACK_DIRECTION = 0 => direction of growth unknown */
1329ae87de88Schristos /* #undef STACK_DIRECTION */
1330ae87de88Schristos 
1331ae87de88Schristos /* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
1332ae87de88Schristos /* #undef STAT_MACROS_BROKEN */
1333ae87de88Schristos 
1334ae87de88Schristos /* Define to 1 if you have the ANSI C header files. */
1335ae87de88Schristos #define STDC_HEADERS 1
1336ae87de88Schristos 
1337ae87de88Schristos /* Define to 1 if strerror_r returns char *. */
1338ae87de88Schristos /* #undef STRERROR_R_CHAR_P */
1339ae87de88Schristos 
1340ae87de88Schristos /* Define to 1 if the type of the st_atim member of a struct stat is struct
1341ae87de88Schristos    timespec. */
1342ae87de88Schristos #define TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1
1343ae87de88Schristos 
1344ae87de88Schristos /* Define if the combination of the ISO C and POSIX multithreading APIs can be
1345ae87de88Schristos    used. */
1346ae87de88Schristos /* #undef USE_ISOC_AND_POSIX_THREADS */
1347ae87de88Schristos 
1348ae87de88Schristos /* Define if the ISO C multithreading library can be used. */
1349ae87de88Schristos /* #undef USE_ISOC_THREADS */
1350ae87de88Schristos 
1351ae87de88Schristos /* Define if the POSIX multithreading library can be used. */
1352ae87de88Schristos #define USE_POSIX_THREADS 1
1353ae87de88Schristos 
1354ae87de88Schristos /* Define if references to the POSIX multithreading library are satisfied by
1355ae87de88Schristos    libc. */
1356ae87de88Schristos /* #undef USE_POSIX_THREADS_FROM_LIBC */
1357ae87de88Schristos 
1358ae87de88Schristos /* Define if references to the POSIX multithreading library should be made
1359ae87de88Schristos    weak. */
1360ae87de88Schristos #define USE_POSIX_THREADS_WEAK 1
1361ae87de88Schristos 
1362ae87de88Schristos /* Enable extensions on AIX 3, Interix.  */
1363ae87de88Schristos #ifndef _ALL_SOURCE
1364ae87de88Schristos # define _ALL_SOURCE 1
1365ae87de88Schristos #endif
1366ae87de88Schristos /* Enable general extensions on macOS.  */
1367ae87de88Schristos #ifndef _DARWIN_C_SOURCE
1368ae87de88Schristos # define _DARWIN_C_SOURCE 1
1369ae87de88Schristos #endif
1370ae87de88Schristos /* Enable general extensions on Solaris.  */
1371ae87de88Schristos #ifndef __EXTENSIONS__
1372ae87de88Schristos # define __EXTENSIONS__ 1
1373ae87de88Schristos #endif
1374ae87de88Schristos /* Enable GNU extensions on systems that have them.  */
1375ae87de88Schristos #ifndef _GNU_SOURCE
1376ae87de88Schristos # define _GNU_SOURCE 1
1377ae87de88Schristos #endif
1378ae87de88Schristos /* Enable X/Open compliant socket functions that do not require linking
1379ae87de88Schristos    with -lxnet on HP-UX 11.11.  */
1380ae87de88Schristos #ifndef _HPUX_ALT_XOPEN_SOCKET_API
1381ae87de88Schristos # define _HPUX_ALT_XOPEN_SOCKET_API 1
1382ae87de88Schristos #endif
1383ae87de88Schristos /* Identify the host operating system as Minix.
1384ae87de88Schristos    This macro does not affect the system headers' behavior.
1385ae87de88Schristos    A future release of Autoconf may stop defining this macro.  */
1386ae87de88Schristos #ifndef _MINIX
1387ae87de88Schristos /* # undef _MINIX */
1388ae87de88Schristos #endif
1389ae87de88Schristos /* Enable general extensions on NetBSD.
1390ae87de88Schristos    Enable NetBSD compatibility extensions on Minix.  */
1391ae87de88Schristos #ifndef _NETBSD_SOURCE
1392ae87de88Schristos # define _NETBSD_SOURCE 1
1393ae87de88Schristos #endif
1394ae87de88Schristos /* Enable OpenBSD compatibility extensions on NetBSD.
1395ae87de88Schristos    Oddly enough, this does nothing on OpenBSD.  */
1396ae87de88Schristos #ifndef _OPENBSD_SOURCE
1397ae87de88Schristos # define _OPENBSD_SOURCE 1
1398ae87de88Schristos #endif
1399ae87de88Schristos /* Define to 1 if needed for POSIX-compatible behavior.  */
1400ae87de88Schristos #ifndef _POSIX_SOURCE
1401ae87de88Schristos /* # undef _POSIX_SOURCE */
1402ae87de88Schristos #endif
1403ae87de88Schristos /* Define to 2 if needed for POSIX-compatible behavior.  */
1404ae87de88Schristos #ifndef _POSIX_1_SOURCE
1405ae87de88Schristos /* # undef _POSIX_1_SOURCE */
1406ae87de88Schristos #endif
1407ae87de88Schristos /* Enable POSIX-compatible threading on Solaris.  */
1408ae87de88Schristos #ifndef _POSIX_PTHREAD_SEMANTICS
1409ae87de88Schristos # define _POSIX_PTHREAD_SEMANTICS 1
1410ae87de88Schristos #endif
1411ae87de88Schristos /* Enable extensions specified by ISO/IEC TS 18661-5:2014.  */
1412ae87de88Schristos #ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
1413ae87de88Schristos # define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
1414ae87de88Schristos #endif
1415ae87de88Schristos /* Enable extensions specified by ISO/IEC TS 18661-1:2014.  */
1416ae87de88Schristos #ifndef __STDC_WANT_IEC_60559_BFP_EXT__
1417ae87de88Schristos # define __STDC_WANT_IEC_60559_BFP_EXT__ 1
1418ae87de88Schristos #endif
1419ae87de88Schristos /* Enable extensions specified by ISO/IEC TS 18661-2:2015.  */
1420ae87de88Schristos #ifndef __STDC_WANT_IEC_60559_DFP_EXT__
1421ae87de88Schristos # define __STDC_WANT_IEC_60559_DFP_EXT__ 1
1422ae87de88Schristos #endif
1423ae87de88Schristos /* Enable extensions specified by ISO/IEC TS 18661-4:2015.  */
1424ae87de88Schristos #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
1425ae87de88Schristos # define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
1426ae87de88Schristos #endif
1427ae87de88Schristos /* Enable extensions specified by ISO/IEC TS 18661-3:2015.  */
1428ae87de88Schristos #ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
1429ae87de88Schristos # define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
1430ae87de88Schristos #endif
1431ae87de88Schristos /* Enable extensions specified by ISO/IEC TR 24731-2:2010.  */
1432ae87de88Schristos #ifndef __STDC_WANT_LIB_EXT2__
1433ae87de88Schristos # define __STDC_WANT_LIB_EXT2__ 1
1434ae87de88Schristos #endif
1435ae87de88Schristos /* Enable extensions specified by ISO/IEC 24747:2009.  */
1436ae87de88Schristos #ifndef __STDC_WANT_MATH_SPEC_FUNCS__
1437ae87de88Schristos # define __STDC_WANT_MATH_SPEC_FUNCS__ 1
1438ae87de88Schristos #endif
1439ae87de88Schristos /* Enable extensions on HP NonStop.  */
1440ae87de88Schristos #ifndef _TANDEM_SOURCE
1441ae87de88Schristos # define _TANDEM_SOURCE 1
1442ae87de88Schristos #endif
1443ae87de88Schristos /* Enable X/Open extensions.  Define to 500 only if necessary
1444ae87de88Schristos    to make mbstate_t available.  */
1445ae87de88Schristos #ifndef _XOPEN_SOURCE
1446ae87de88Schristos /* # undef _XOPEN_SOURCE */
1447ae87de88Schristos #endif
1448ae87de88Schristos 
1449ae87de88Schristos 
1450ae87de88Schristos /* Define if the native Windows multithreading API can be used. */
1451ae87de88Schristos /* #undef USE_WINDOWS_THREADS */
1452ae87de88Schristos 
1453ae87de88Schristos /* Define to 1 if unsetenv returns void instead of int. */
1454ae87de88Schristos /* #undef VOID_UNSETENV */
1455ae87de88Schristos 
1456ae87de88Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1457ae87de88Schristos    'wchar_t'. */
1458ae87de88Schristos #define WCHAR_T_SUFFIX
1459ae87de88Schristos 
1460ae87de88Schristos /* Define if WSAStartup is needed. */
1461ae87de88Schristos /* #undef WINDOWS_SOCKETS */
1462ae87de88Schristos 
1463ae87de88Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1464ae87de88Schristos    'wint_t'. */
1465ae87de88Schristos #define WINT_T_SUFFIX
1466ae87de88Schristos 
1467ae87de88Schristos /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
1468ae87de88Schristos    significant byte first (like Motorola and SPARC, unlike Intel). */
1469ae87de88Schristos #if defined AC_APPLE_UNIVERSAL_BUILD
1470ae87de88Schristos # if defined __BIG_ENDIAN__
1471ae87de88Schristos #  define WORDS_BIGENDIAN 1
1472ae87de88Schristos # endif
1473ae87de88Schristos #else
1474ae87de88Schristos # ifndef WORDS_BIGENDIAN
1475ae87de88Schristos /* #  undef WORDS_BIGENDIAN */
1476ae87de88Schristos # endif
1477ae87de88Schristos #endif
1478ae87de88Schristos 
1479ae87de88Schristos /* Number of bits in a file offset, on hosts where this is settable. */
1480ae87de88Schristos /* #undef _FILE_OFFSET_BITS */
1481ae87de88Schristos 
1482ae87de88Schristos /* True if the compiler says it groks GNU C version MAJOR.MINOR.  */
1483ae87de88Schristos #if defined __GNUC__ && defined __GNUC_MINOR__
1484ae87de88Schristos # define _GL_GNUC_PREREQ(major, minor) \
1485ae87de88Schristos     ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
1486ae87de88Schristos #else
1487ae87de88Schristos # define _GL_GNUC_PREREQ(major, minor) 0
1488ae87de88Schristos #endif
1489ae87de88Schristos 
1490ae87de88Schristos 
1491ae87de88Schristos /* Define to enable the declarations of ISO C 11 types and functions. */
1492ae87de88Schristos /* #undef _ISOC11_SOURCE */
1493ae87de88Schristos 
1494ae87de88Schristos /* Define for large files, on AIX-style hosts. */
1495ae87de88Schristos /* #undef _LARGE_FILES */
1496ae87de88Schristos 
1497ae87de88Schristos /* Define to 1 on Solaris. */
1498ae87de88Schristos /* #undef _LCONV_C99 */
1499ae87de88Schristos 
1500ae87de88Schristos /* The _Noreturn keyword of C11.  */
1501ae87de88Schristos #ifndef _Noreturn
1502ae87de88Schristos # if (defined __cplusplus \
1503ae87de88Schristos       && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
1504ae87de88Schristos           || (defined _MSC_VER && 1900 <= _MSC_VER)) \
1505ae87de88Schristos       && 0)
1506ae87de88Schristos     /* [[noreturn]] is not practically usable, because with it the syntax
1507ae87de88Schristos          extern _Noreturn void func (...);
1508ae87de88Schristos        would not be valid; such a declaration would only be valid with 'extern'
1509ae87de88Schristos        and '_Noreturn' swapped, or without the 'extern' keyword.  However, some
1510ae87de88Schristos        AIX system header files and several gnulib header files use precisely
1511ae87de88Schristos        this syntax with 'extern'.  */
1512ae87de88Schristos #  define _Noreturn [[noreturn]]
1513ae87de88Schristos # elif ((!defined __cplusplus || defined __clang__) \
1514ae87de88Schristos         && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
1515ae87de88Schristos             || (!defined __STRICT_ANSI__ \
1516ae87de88Schristos                 && (_GL_GNUC_PREREQ (4, 7) \
1517ae87de88Schristos                     || (defined __apple_build_version__ \
1518ae87de88Schristos                         ? 6000000 <= __apple_build_version__ \
1519ae87de88Schristos                         : 3 < __clang_major__ + (5 <= __clang_minor__))))))
1520ae87de88Schristos    /* _Noreturn works as-is.  */
1521ae87de88Schristos # elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
1522ae87de88Schristos #  define _Noreturn __attribute__ ((__noreturn__))
1523ae87de88Schristos # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
1524ae87de88Schristos #  define _Noreturn __declspec (noreturn)
1525ae87de88Schristos # else
1526ae87de88Schristos #  define _Noreturn
1527ae87de88Schristos # endif
1528ae87de88Schristos #endif
1529ae87de88Schristos 
1530ae87de88Schristos 
1531ae87de88Schristos /* Define to 1 in order to get the POSIX compatible declarations of socket
1532ae87de88Schristos    functions. */
1533ae87de88Schristos /* #undef _POSIX_PII_SOCKET */
1534ae87de88Schristos 
1535ae87de88Schristos /* Number of bits in a timestamp, on hosts where this is settable. */
1536ae87de88Schristos /* #undef _TIME_BITS */
1537ae87de88Schristos 
1538ae87de88Schristos /* For standard stat data types on VMS. */
1539ae87de88Schristos #define _USE_STD_STAT 1
1540ae87de88Schristos 
1541ae87de88Schristos /* For 64-bit time_t on 32-bit mingw. */
1542ae87de88Schristos /* #undef __MINGW_USE_VC2005_COMPAT */
1543ae87de88Schristos 
1544ae87de88Schristos /* Define to 1 if the system <stdint.h> predates C++11. */
1545ae87de88Schristos /* #undef __STDC_CONSTANT_MACROS */
1546ae87de88Schristos 
1547ae87de88Schristos /* Define to 1 if the system <stdint.h> predates C++11. */
1548ae87de88Schristos /* #undef __STDC_LIMIT_MACROS */
1549ae87de88Schristos 
1550ae87de88Schristos /* Define to 1 if C does not support variable-length arrays, and if the
1551ae87de88Schristos    compiler does not already define this. */
1552ae87de88Schristos /* #undef __STDC_NO_VLA__ */
1553ae87de88Schristos 
1554ae87de88Schristos /* The _GL_ASYNC_SAFE marker should be attached to functions that are
1555ae87de88Schristos    signal handlers (for signals other than SIGABRT, SIGPIPE) or can be
1556ae87de88Schristos    invoked from such signal handlers.  Such functions have some restrictions:
1557ae87de88Schristos      * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
1558ae87de88Schristos        or should be listed as async-signal-safe in POSIX
1559ae87de88Schristos        <https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
1560ae87de88Schristos        section 2.4.3.  Note that malloc(), sprintf(), and fwrite(), in
1561ae87de88Schristos        particular, are NOT async-signal-safe.
1562ae87de88Schristos      * All memory locations (variables and struct fields) that these functions
1563ae87de88Schristos        access must be marked 'volatile'.  This holds for both read and write
1564ae87de88Schristos        accesses.  Otherwise the compiler might optimize away stores to and
1565ae87de88Schristos        reads from such locations that occur in the program, depending on its
1566ae87de88Schristos        data flow analysis.  For example, when the program contains a loop
1567ae87de88Schristos        that is intended to inspect a variable set from within a signal handler
1568ae87de88Schristos            while (!signal_occurred)
1569ae87de88Schristos              ;
1570ae87de88Schristos        the compiler is allowed to transform this into an endless loop if the
1571ae87de88Schristos        variable 'signal_occurred' is not declared 'volatile'.
1572ae87de88Schristos    Additionally, recall that:
1573ae87de88Schristos      * A signal handler should not modify errno (except if it is a handler
1574ae87de88Schristos        for a fatal signal and ends by raising the same signal again, thus
1575ae87de88Schristos        provoking the termination of the process).  If it invokes a function
1576ae87de88Schristos        that may clobber errno, it needs to save and restore the value of
1577ae87de88Schristos        errno.  */
1578ae87de88Schristos #define _GL_ASYNC_SAFE
1579ae87de88Schristos 
1580ae87de88Schristos 
1581ae87de88Schristos /* Attributes.  */
1582ae87de88Schristos #if (defined __has_attribute \
1583ae87de88Schristos      && (!defined __clang_minor__ \
1584ae87de88Schristos          || (defined __apple_build_version__ \
1585ae87de88Schristos              ? 6000000 <= __apple_build_version__ \
1586ae87de88Schristos              : 3 < __clang_major__ + (5 <= __clang_minor__))))
1587ae87de88Schristos # define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
1588ae87de88Schristos #else
1589ae87de88Schristos # define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
1590ae87de88Schristos # define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
1591ae87de88Schristos # define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
1592ae87de88Schristos # define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
1593ae87de88Schristos # define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
1594ae87de88Schristos # define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
1595ae87de88Schristos # define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
1596ae87de88Schristos # define _GL_ATTR_diagnose_if 0
1597ae87de88Schristos # define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
1598ae87de88Schristos # define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
1599ae87de88Schristos # define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
1600ae87de88Schristos # define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
1601ae87de88Schristos # define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
1602ae87de88Schristos # define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
1603ae87de88Schristos # ifdef _ICC
1604ae87de88Schristos #  define _GL_ATTR_may_alias 0
1605ae87de88Schristos # else
1606ae87de88Schristos #  define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
1607ae87de88Schristos # endif
1608ae87de88Schristos # define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
1609ae87de88Schristos # define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
1610ae87de88Schristos # define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
1611ae87de88Schristos # define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
1612ae87de88Schristos # define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
1613ae87de88Schristos # define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
1614ae87de88Schristos # define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
1615ae87de88Schristos # define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
1616ae87de88Schristos # define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
1617ae87de88Schristos # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
1618ae87de88Schristos #endif
1619ae87de88Schristos 
1620ae87de88Schristos #ifdef __has_c_attribute
1621ae87de88Schristos # if ((defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710 \
1622ae87de88Schristos       && _GL_GNUC_PREREQ (4, 6))
1623ae87de88Schristos #  pragma GCC diagnostic ignored "-Wpedantic"
1624ae87de88Schristos # endif
1625ae87de88Schristos # define _GL_HAS_C_ATTRIBUTE(attr) __has_c_attribute (__##attr##__)
1626ae87de88Schristos #else
1627ae87de88Schristos # define _GL_HAS_C_ATTRIBUTE(attr) 0
1628ae87de88Schristos #endif
1629ae87de88Schristos 
1630ae87de88Schristos 
1631ae87de88Schristos /* _GL_ATTRIBUTE_ALLOC_SIZE ((N)) declares that the Nth argument of the function
1632ae87de88Schristos    is the size of the returned memory block.
1633ae87de88Schristos    _GL_ATTRIBUTE_ALLOC_SIZE ((M, N)) declares that the Mth argument multiplied
1634ae87de88Schristos    by the Nth argument of the function is the size of the returned memory block.
1635ae87de88Schristos  */
1636ae87de88Schristos /* Applies to: function, pointer to function, function types.  */
1637ae87de88Schristos #if _GL_HAS_ATTRIBUTE (alloc_size)
1638ae87de88Schristos # define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
1639ae87de88Schristos #else
1640ae87de88Schristos # define _GL_ATTRIBUTE_ALLOC_SIZE(args)
1641ae87de88Schristos #endif
1642ae87de88Schristos 
1643ae87de88Schristos /* _GL_ATTRIBUTE_ALWAYS_INLINE tells that the compiler should always inline the
1644ae87de88Schristos    function and report an error if it cannot do so.  */
1645ae87de88Schristos /* Applies to: function.  */
1646ae87de88Schristos #if _GL_HAS_ATTRIBUTE (always_inline)
1647ae87de88Schristos # define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
1648ae87de88Schristos #else
1649ae87de88Schristos # define _GL_ATTRIBUTE_ALWAYS_INLINE
1650ae87de88Schristos #endif
1651ae87de88Schristos 
1652ae87de88Schristos /* _GL_ATTRIBUTE_ARTIFICIAL declares that the function is not important to show
1653ae87de88Schristos     in stack traces when debugging.  The compiler should omit the function from
1654ae87de88Schristos     stack traces.  */
1655ae87de88Schristos /* Applies to: function.  */
1656ae87de88Schristos #if _GL_HAS_ATTRIBUTE (artificial)
1657ae87de88Schristos # define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
1658ae87de88Schristos #else
1659ae87de88Schristos # define _GL_ATTRIBUTE_ARTIFICIAL
1660ae87de88Schristos #endif
1661ae87de88Schristos 
1662ae87de88Schristos /* _GL_ATTRIBUTE_COLD declares that the function is rarely executed.  */
1663ae87de88Schristos /* Applies to: functions.  */
1664ae87de88Schristos /* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
1665ae87de88Schristos    <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
1666ae87de88Schristos    Also, Oracle Studio 12.6 requires 'cold' not '__cold__'.  */
1667ae87de88Schristos #if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
1668ae87de88Schristos # ifndef __SUNPRO_C
1669ae87de88Schristos #  define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
1670ae87de88Schristos # else
1671ae87de88Schristos #  define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
1672ae87de88Schristos # endif
1673ae87de88Schristos #else
1674ae87de88Schristos # define _GL_ATTRIBUTE_COLD
1675ae87de88Schristos #endif
1676ae87de88Schristos 
1677ae87de88Schristos /* _GL_ATTRIBUTE_CONST declares that it is OK for a compiler to omit duplicate
1678ae87de88Schristos    calls to the function with the same arguments.
1679ae87de88Schristos    This attribute is safe for a function that neither depends on nor affects
1680ae87de88Schristos    observable state, and always returns exactly once - e.g., does not loop
1681ae87de88Schristos    forever, and does not call longjmp.
1682ae87de88Schristos    (This attribute is stricter than _GL_ATTRIBUTE_PURE.)  */
1683ae87de88Schristos /* Applies to: functions.  */
1684ae87de88Schristos #if _GL_HAS_ATTRIBUTE (const)
1685ae87de88Schristos # define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
1686ae87de88Schristos #else
1687ae87de88Schristos # define _GL_ATTRIBUTE_CONST
1688ae87de88Schristos #endif
1689ae87de88Schristos 
1690ae87de88Schristos /* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers
1691ae87de88Schristos    that can be freed by passing them as the Ith argument to the
1692ae87de88Schristos    function F.
1693ae87de88Schristos    _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that
1694ae87de88Schristos    can be freed via 'free'; it can be used only after declaring 'free'.  */
1695ae87de88Schristos /* Applies to: functions.  Cannot be used on inline functions.  */
1696ae87de88Schristos /* Disable on Solaris to avoid GDB PR build/29791.  */
1697ae87de88Schristos #if _GL_GNUC_PREREQ (11, 0) && !(defined(__sun__) && defined(__svr4__))
1698ae87de88Schristos # define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i)))
1699ae87de88Schristos #else
1700ae87de88Schristos # define _GL_ATTRIBUTE_DEALLOC(f, i)
1701ae87de88Schristos #endif
1702ae87de88Schristos /* If gnulib's <string.h> or <wchar.h> has already defined this macro, continue
1703ae87de88Schristos    to use this earlier definition, since <stdlib.h> may not have been included
1704ae87de88Schristos    yet.  */
1705ae87de88Schristos #ifndef _GL_ATTRIBUTE_DEALLOC_FREE
1706ae87de88Schristos # define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1)
1707ae87de88Schristos #endif
1708ae87de88Schristos 
1709ae87de88Schristos /* _GL_ATTRIBUTE_DEPRECATED: Declares that an entity is deprecated.
1710ae87de88Schristos    The compiler may warn if the entity is used.  */
1711ae87de88Schristos /* Applies to:
1712ae87de88Schristos      - function, variable,
1713ae87de88Schristos      - struct, union, struct/union member,
1714ae87de88Schristos      - enumeration, enumeration item,
1715ae87de88Schristos      - typedef,
1716ae87de88Schristos    in C++ also: namespace, class, template specialization.  */
1717ae87de88Schristos #if _GL_HAS_C_ATTRIBUTE (deprecated)
1718ae87de88Schristos # define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
1719ae87de88Schristos #elif _GL_HAS_ATTRIBUTE (deprecated)
1720ae87de88Schristos # define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
1721ae87de88Schristos #else
1722ae87de88Schristos # define _GL_ATTRIBUTE_DEPRECATED
1723ae87de88Schristos #endif
1724ae87de88Schristos 
1725ae87de88Schristos /* _GL_ATTRIBUTE_ERROR(msg) requests an error if a function is called and
1726ae87de88Schristos    the function call is not optimized away.
1727ae87de88Schristos    _GL_ATTRIBUTE_WARNING(msg) requests a warning if a function is called and
1728ae87de88Schristos    the function call is not optimized away.  */
1729ae87de88Schristos /* Applies to: functions.  */
1730ae87de88Schristos #if _GL_HAS_ATTRIBUTE (error)
1731ae87de88Schristos # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
1732ae87de88Schristos # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
1733ae87de88Schristos #elif _GL_HAS_ATTRIBUTE (diagnose_if)
1734ae87de88Schristos # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
1735ae87de88Schristos # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
1736ae87de88Schristos #else
1737ae87de88Schristos # define _GL_ATTRIBUTE_ERROR(msg)
1738ae87de88Schristos # define _GL_ATTRIBUTE_WARNING(msg)
1739ae87de88Schristos #endif
1740ae87de88Schristos 
1741ae87de88Schristos /* _GL_ATTRIBUTE_EXTERNALLY_VISIBLE declares that the entity should remain
1742ae87de88Schristos    visible to debuggers etc., even with '-fwhole-program'.  */
1743ae87de88Schristos /* Applies to: functions, variables.  */
1744ae87de88Schristos #if _GL_HAS_ATTRIBUTE (externally_visible)
1745ae87de88Schristos # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
1746ae87de88Schristos #else
1747ae87de88Schristos # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
1748ae87de88Schristos #endif
1749ae87de88Schristos 
1750ae87de88Schristos /* _GL_ATTRIBUTE_FALLTHROUGH declares that it is not a programming mistake if
1751ae87de88Schristos    the control flow falls through to the immediately following 'case' or
1752ae87de88Schristos    'default' label.  The compiler should not warn in this case.  */
1753ae87de88Schristos /* Applies to: Empty statement (;), inside a 'switch' statement.  */
1754ae87de88Schristos /* Always expands to something.  */
1755ae87de88Schristos #if _GL_HAS_C_ATTRIBUTE (fallthrough)
1756ae87de88Schristos # define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
1757ae87de88Schristos #elif _GL_HAS_ATTRIBUTE (fallthrough)
1758ae87de88Schristos # define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
1759ae87de88Schristos #else
1760ae87de88Schristos # define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
1761ae87de88Schristos #endif
1762ae87de88Schristos 
1763ae87de88Schristos /* _GL_ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK))
1764ae87de88Schristos    declares that the STRING-INDEXth function argument is a format string of
1765ae87de88Schristos    style ARCHETYPE, which is one of:
1766ae87de88Schristos      printf, gnu_printf
1767ae87de88Schristos      scanf, gnu_scanf,
1768ae87de88Schristos      strftime, gnu_strftime,
1769ae87de88Schristos      strfmon,
1770ae87de88Schristos    or the same thing prefixed and suffixed with '__'.
1771ae87de88Schristos    If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK
1772ae87de88Schristos    are suitable for the format string.  */
1773ae87de88Schristos /* Applies to: functions.  */
1774ae87de88Schristos #if _GL_HAS_ATTRIBUTE (format)
1775ae87de88Schristos # define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
1776ae87de88Schristos #else
1777ae87de88Schristos # define _GL_ATTRIBUTE_FORMAT(spec)
1778ae87de88Schristos #endif
1779ae87de88Schristos 
1780ae87de88Schristos /* _GL_ATTRIBUTE_LEAF declares that if the function is called from some other
1781ae87de88Schristos    compilation unit, it executes code from that unit only by return or by
1782ae87de88Schristos    exception handling.  This declaration lets the compiler optimize that unit
1783ae87de88Schristos    more aggressively.  */
1784ae87de88Schristos /* Applies to: functions.  */
1785ae87de88Schristos #if _GL_HAS_ATTRIBUTE (leaf)
1786ae87de88Schristos # define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
1787ae87de88Schristos #else
1788ae87de88Schristos # define _GL_ATTRIBUTE_LEAF
1789ae87de88Schristos #endif
1790ae87de88Schristos 
1791ae87de88Schristos /* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly
1792ae87de88Schristos    allocated memory.  */
1793ae87de88Schristos /* Applies to: functions.  */
1794ae87de88Schristos #if _GL_HAS_ATTRIBUTE (malloc)
1795ae87de88Schristos # define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
1796ae87de88Schristos #else
1797ae87de88Schristos # define _GL_ATTRIBUTE_MALLOC
1798ae87de88Schristos #endif
1799ae87de88Schristos 
1800ae87de88Schristos /* _GL_ATTRIBUTE_MAY_ALIAS declares that pointers to the type may point to the
1801ae87de88Schristos    same storage as pointers to other types.  Thus this declaration disables
1802ae87de88Schristos    strict aliasing optimization.  */
1803ae87de88Schristos /* Applies to: types.  */
1804ae87de88Schristos /* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK.  */
1805ae87de88Schristos #if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
1806ae87de88Schristos # define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
1807ae87de88Schristos #else
1808ae87de88Schristos # define _GL_ATTRIBUTE_MAY_ALIAS
1809ae87de88Schristos #endif
1810ae87de88Schristos 
1811ae87de88Schristos /* _GL_ATTRIBUTE_MAYBE_UNUSED declares that it is not a programming mistake if
1812ae87de88Schristos    the entity is not used.  The compiler should not warn if the entity is not
1813ae87de88Schristos    used.  */
1814ae87de88Schristos /* Applies to:
1815ae87de88Schristos      - function, variable,
1816ae87de88Schristos      - struct, union, struct/union member,
1817ae87de88Schristos      - enumeration, enumeration item,
1818ae87de88Schristos      - typedef,
1819ae87de88Schristos    in C++ also: class.  */
1820ae87de88Schristos /* In C++ and C2x, this is spelled [[__maybe_unused__]].
1821ae87de88Schristos    GCC's syntax is __attribute__ ((__unused__)).
1822ae87de88Schristos    clang supports both syntaxes.  */
1823ae87de88Schristos #if _GL_HAS_C_ATTRIBUTE (maybe_unused)
1824ae87de88Schristos # define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
1825ae87de88Schristos #else
1826ae87de88Schristos # define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED
1827ae87de88Schristos #endif
1828ae87de88Schristos /* Alternative spelling of this macro, for convenience.  */
1829ae87de88Schristos #define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
1830ae87de88Schristos /* Earlier spellings of this macro.  */
1831ae87de88Schristos #define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
1832ae87de88Schristos 
1833ae87de88Schristos /* _GL_ATTRIBUTE_NODISCARD declares that the caller of the function should not
1834ae87de88Schristos    discard the return value.  The compiler may warn if the caller does not use
1835ae87de88Schristos    the return value, unless the caller uses something like ignore_value.  */
1836ae87de88Schristos /* Applies to: function, enumeration, class.  */
1837ae87de88Schristos #if _GL_HAS_C_ATTRIBUTE (nodiscard)
1838ae87de88Schristos # define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
1839ae87de88Schristos #elif _GL_HAS_ATTRIBUTE (warn_unused_result)
1840ae87de88Schristos # define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
1841ae87de88Schristos #else
1842ae87de88Schristos # define _GL_ATTRIBUTE_NODISCARD
1843ae87de88Schristos #endif
1844ae87de88Schristos 
1845ae87de88Schristos /* _GL_ATTRIBUTE_NOINLINE tells that the compiler should not inline the
1846ae87de88Schristos    function.  */
1847ae87de88Schristos /* Applies to: functions.  */
1848ae87de88Schristos #if _GL_HAS_ATTRIBUTE (noinline)
1849ae87de88Schristos # define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
1850ae87de88Schristos #else
1851ae87de88Schristos # define _GL_ATTRIBUTE_NOINLINE
1852ae87de88Schristos #endif
1853ae87de88Schristos 
1854ae87de88Schristos /* _GL_ATTRIBUTE_NONNULL ((N1, N2,...)) declares that the arguments N1, N2,...
1855ae87de88Schristos    must not be NULL.
1856ae87de88Schristos    _GL_ATTRIBUTE_NONNULL () declares that all pointer arguments must not be
1857ae87de88Schristos    null.  */
1858ae87de88Schristos /* Applies to: functions.  */
1859ae87de88Schristos #if _GL_HAS_ATTRIBUTE (nonnull)
1860ae87de88Schristos # define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
1861ae87de88Schristos #else
1862ae87de88Schristos # define _GL_ATTRIBUTE_NONNULL(args)
1863ae87de88Schristos #endif
1864ae87de88Schristos 
1865ae87de88Schristos /* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is
1866ae87de88Schristos    not meant to be NUL-terminated.  */
1867ae87de88Schristos /* Applies to: struct/union members and variables that are arrays of element
1868ae87de88Schristos    type '[[un]signed] char'.  */
1869ae87de88Schristos #if _GL_HAS_ATTRIBUTE (nonstring)
1870ae87de88Schristos # define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
1871ae87de88Schristos #else
1872ae87de88Schristos # define _GL_ATTRIBUTE_NONSTRING
1873ae87de88Schristos #endif
1874ae87de88Schristos 
1875ae87de88Schristos /* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead.  */
1876ae87de88Schristos 
1877ae87de88Schristos /* _GL_ATTRIBUTE_NOTHROW declares that the function does not throw exceptions.
1878ae87de88Schristos  */
1879ae87de88Schristos /* Applies to: functions.  */
1880ae87de88Schristos #if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
1881ae87de88Schristos # define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
1882ae87de88Schristos #else
1883ae87de88Schristos # define _GL_ATTRIBUTE_NOTHROW
1884ae87de88Schristos #endif
1885ae87de88Schristos 
1886ae87de88Schristos /* _GL_ATTRIBUTE_PACKED declares:
1887ae87de88Schristos    For struct members: The member has the smallest possible alignment.
1888ae87de88Schristos    For struct, union, class: All members have the smallest possible alignment,
1889ae87de88Schristos    minimizing the memory required.  */
1890ae87de88Schristos /* Applies to: struct members, struct, union,
1891ae87de88Schristos    in C++ also: class.  */
1892ae87de88Schristos #if _GL_HAS_ATTRIBUTE (packed)
1893ae87de88Schristos # define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
1894ae87de88Schristos #else
1895ae87de88Schristos # define _GL_ATTRIBUTE_PACKED
1896ae87de88Schristos #endif
1897ae87de88Schristos 
1898ae87de88Schristos /* _GL_ATTRIBUTE_PURE declares that It is OK for a compiler to omit duplicate
1899ae87de88Schristos    calls to the function with the same arguments if observable state is not
1900ae87de88Schristos    changed between calls.
1901ae87de88Schristos    This attribute is safe for a function that does not affect
1902ae87de88Schristos    observable state, and always returns exactly once.
1903ae87de88Schristos    (This attribute is looser than _GL_ATTRIBUTE_CONST.)  */
1904ae87de88Schristos /* Applies to: functions.  */
1905ae87de88Schristos #if _GL_HAS_ATTRIBUTE (pure)
1906ae87de88Schristos # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
1907ae87de88Schristos #else
1908ae87de88Schristos # define _GL_ATTRIBUTE_PURE
1909ae87de88Schristos #endif
1910ae87de88Schristos 
1911ae87de88Schristos /* _GL_ATTRIBUTE_RETURNS_NONNULL declares that the function's return value is
1912ae87de88Schristos    a non-NULL pointer.  */
1913ae87de88Schristos /* Applies to: functions.  */
1914ae87de88Schristos #if _GL_HAS_ATTRIBUTE (returns_nonnull)
1915ae87de88Schristos # define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
1916ae87de88Schristos #else
1917ae87de88Schristos # define _GL_ATTRIBUTE_RETURNS_NONNULL
1918ae87de88Schristos #endif
1919ae87de88Schristos 
1920ae87de88Schristos /* _GL_ATTRIBUTE_SENTINEL(pos) declares that the variadic function expects a
1921ae87de88Schristos    trailing NULL argument.
1922ae87de88Schristos    _GL_ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99).
1923ae87de88Schristos    _GL_ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL.  */
1924ae87de88Schristos /* Applies to: functions.  */
1925ae87de88Schristos #if _GL_HAS_ATTRIBUTE (sentinel)
1926ae87de88Schristos # define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
1927ae87de88Schristos #else
1928ae87de88Schristos # define _GL_ATTRIBUTE_SENTINEL(pos)
1929ae87de88Schristos #endif
1930ae87de88Schristos 
1931ae87de88Schristos /* A helper macro.  Don't use it directly.  */
1932ae87de88Schristos #if _GL_HAS_ATTRIBUTE (unused)
1933ae87de88Schristos # define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
1934ae87de88Schristos #else
1935ae87de88Schristos # define _GL_ATTRIBUTE_UNUSED
1936ae87de88Schristos #endif
1937ae87de88Schristos 
1938ae87de88Schristos 
1939ae87de88Schristos /* _GL_UNUSED_LABEL; declares that it is not a programming mistake if the
1940ae87de88Schristos    immediately preceding label is not used.  The compiler should not warn
1941ae87de88Schristos    if the label is not used.  */
1942ae87de88Schristos /* Applies to: label (both in C and C++).  */
1943ae87de88Schristos /* Note that g++ < 4.5 does not support the '__attribute__ ((__unused__)) ;'
1944ae87de88Schristos    syntax.  But clang does.  */
1945ae87de88Schristos #if !(defined __cplusplus && !_GL_GNUC_PREREQ (4, 5)) || defined __clang__
1946ae87de88Schristos # define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED
1947ae87de88Schristos #else
1948ae87de88Schristos # define _GL_UNUSED_LABEL
1949ae87de88Schristos #endif
1950ae87de88Schristos 
1951ae87de88Schristos 
1952ae87de88Schristos /* Define to `int' if <sys/types.h> doesn't define. */
1953ae87de88Schristos /* #undef gid_t */
1954ae87de88Schristos 
1955ae87de88Schristos /* Define to `__inline__' or `__inline' if that's what the C compiler
1956ae87de88Schristos    calls it, or to nothing if 'inline' is not supported under any name.  */
1957ae87de88Schristos #ifndef __cplusplus
1958ae87de88Schristos /* #undef inline */
1959ae87de88Schristos #endif
1960ae87de88Schristos 
1961ae87de88Schristos /* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
1962ae87de88Schristos    the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
1963ae87de88Schristos    earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
1964ae87de88Schristos    __APPLE__ && __MACH__ test for Mac OS X.
1965ae87de88Schristos    __APPLE_CC__ tests for the Apple compiler and its version.
1966ae87de88Schristos    __STDC_VERSION__ tests for the C99 mode.  */
1967ae87de88Schristos #if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
1968ae87de88Schristos # define __GNUC_STDC_INLINE__ 1
1969ae87de88Schristos #endif
1970ae87de88Schristos 
1971ae87de88Schristos /* Define to a type if <wchar.h> does not define. */
1972ae87de88Schristos /* #undef mbstate_t */
1973ae87de88Schristos 
1974ae87de88Schristos /* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
1975ae87de88Schristos    n1 and n2 are expressions without side effects, that evaluate to real
1976ae87de88Schristos    numbers (excluding NaN).
1977ae87de88Schristos    It returns
1978ae87de88Schristos      1  if n1 > n2
1979ae87de88Schristos      0  if n1 == n2
1980ae87de88Schristos      -1 if n1 < n2
1981ae87de88Schristos    The naïve code   (n1 > n2 ? 1 : n1 < n2 ? -1 : 0)  produces a conditional
1982ae87de88Schristos    jump with nearly all GCC versions up to GCC 10.
1983ae87de88Schristos    This variant     (n1 < n2 ? -1 : n1 > n2)  produces a conditional with many
1984ae87de88Schristos    GCC versions up to GCC 9.
1985ae87de88Schristos    The better code  (n1 > n2) - (n1 < n2)  from Hacker's Delight § 2-9
1986ae87de88Schristos    avoids conditional jumps in all GCC versions >= 3.4.  */
1987ae87de88Schristos #define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
1988ae87de88Schristos 
1989ae87de88Schristos 
1990ae87de88Schristos /* Define to `int' if <sys/types.h> does not define. */
1991ae87de88Schristos /* #undef mode_t */
1992ae87de88Schristos 
1993ae87de88Schristos /* Define to the type of st_nlink in struct stat, or a supertype. */
1994ae87de88Schristos /* #undef nlink_t */
1995ae87de88Schristos 
1996ae87de88Schristos /* Define as a signed integer type capable of holding a process identifier. */
1997ae87de88Schristos /* #undef pid_t */
1998ae87de88Schristos 
1999ae87de88Schristos /* Define to the equivalent of the C99 'restrict' keyword, or to
2000ae87de88Schristos    nothing if this is not supported.  Do not define if restrict is
2001ae87de88Schristos    supported only directly.  */
2002ae87de88Schristos #define restrict __restrict__
2003ae87de88Schristos /* Work around a bug in older versions of Sun C++, which did not
2004ae87de88Schristos    #define __restrict__ or support _Restrict or __restrict__
2005ae87de88Schristos    even though the corresponding Sun C compiler ended up with
2006ae87de88Schristos    "#define restrict _Restrict" or "#define restrict __restrict__"
2007ae87de88Schristos    in the previous line.  This workaround can be removed once
2008ae87de88Schristos    we assume Oracle Developer Studio 12.5 (2016) or later.  */
2009ae87de88Schristos #if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
2010ae87de88Schristos # define _Restrict
2011ae87de88Schristos # define __restrict__
2012ae87de88Schristos #endif
2013ae87de88Schristos 
2014ae87de88Schristos /* Define to `unsigned int' if <sys/types.h> does not define. */
2015ae87de88Schristos /* #undef size_t */
2016ae87de88Schristos 
2017ae87de88Schristos /* type to use in place of socklen_t if not defined */
2018ae87de88Schristos /* #undef socklen_t */
2019ae87de88Schristos 
2020ae87de88Schristos /* Define as a signed type of the same size as size_t. */
2021ae87de88Schristos /* #undef ssize_t */
2022ae87de88Schristos 
2023ae87de88Schristos /* Define to `int' if <sys/types.h> doesn't define. */
2024ae87de88Schristos /* #undef uid_t */
2025