1 /* config.in. Generated from configure.ac by autoheader. */
3 /* Define if building universal (internal helper macro) */
4 #undef AC_APPLE_UNIVERSAL_BUILD
6 /* Define to the number of bits in type 'ptrdiff_t'. */
7 #undef BITSIZEOF_PTRDIFF_T
9 /* Define to the number of bits in type 'sig_atomic_t'. */
10 #undef BITSIZEOF_SIG_ATOMIC_T
12 /* Define to the number of bits in type 'size_t'. */
13 #undef BITSIZEOF_SIZE_T
15 /* Define to the number of bits in type 'wchar_t'. */
16 #undef BITSIZEOF_WCHAR_T
18 /* Define to the number of bits in type 'wint_t'. */
19 #undef BITSIZEOF_WINT_T
21 /* Define to 1 if chown fails to change ctime when at least one argument was
23 #undef CHOWN_CHANGE_TIME_BUG
25 /* Define if chown is not POSIX compliant regarding IDs of -1. */
26 #undef CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE
28 /* Define if chown modifies symlinks. */
29 #undef CHOWN_MODIFIES_SYMLINK
31 /* Define to 1 if chown mishandles trailing slash. */
32 #undef CHOWN_TRAILING_SLASH_BUG
34 /* Define to 1 if using 'alloca.c'. */
37 /* Define as the bit index in the word where to find bit 0 of the exponent of
39 #undef DBL_EXPBIT0_BIT
41 /* Define as the word index where to find the exponent of 'double'. */
42 #undef DBL_EXPBIT0_WORD
44 /* the name of the file descriptor member of DIR */
45 #undef DIR_FD_MEMBER_NAME
47 #ifdef DIR_FD_MEMBER_NAME
48 # define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME)
50 # define DIR_TO_FD(Dir_p) -1
54 /* Define to 1 if // is a file system root distinct from /. */
55 #undef DOUBLE_SLASH_IS_DISTINCT_ROOT
57 /* Define if struct dirent has a member d_ino that actually works. */
58 #undef D_INO_IN_DIRENT
60 /* Define this to 1 if F_DUPFD behavior does not match POSIX */
61 #undef FCNTL_DUPFD_BUGGY
63 /* Define to nothing if C supports flexible array members, and to 1 if it does
64 not. That way, with a declaration like 'struct s { int n; short
65 d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99
66 compilers. Use 'FLEXSIZEOF (struct s, d, N * sizeof (short))' to calculate
67 the size in bytes of such a struct containing an N-element array. */
68 #undef FLEXIBLE_ARRAY_MEMBER
70 /* Define to 1 if mkdir mistakenly creates a directory given with a trailing
72 #undef FUNC_MKDIR_DOT_BUG
74 /* Define to 1 if realpath() can malloc memory, always gives an absolute path,
75 and handles a trailing slash correctly. */
76 #undef FUNC_REALPATH_NEARLY_WORKS
78 /* Define to 1 if realpath() can malloc memory, always gives an absolute path,
79 and handles leading slashes and a trailing slash correctly. */
80 #undef FUNC_REALPATH_WORKS
82 /* Define this to 'void' or 'struct timezone' to match the system's
83 declaration of the second argument to gettimeofday. */
84 #undef GETTIMEOFDAY_TIMEZONE
86 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
87 whether the gnulib module canonicalize-lgpl shall be considered present. */
88 #undef GNULIB_CANONICALIZE_LGPL
90 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
91 whether the gnulib module fdopendir shall be considered present. */
92 #undef GNULIB_FDOPENDIR
94 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
95 whether the gnulib module fd-safer-flag shall be considered present. */
96 #undef GNULIB_FD_SAFER_FLAG
98 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
99 whether the gnulib module fnmatch-gnu shall be considered present. */
100 #undef GNULIB_FNMATCH_GNU
102 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
103 whether the gnulib module fscanf shall be considered present. */
106 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
107 whether the gnulib module getcwd shall be considered present. */
110 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
111 whether the gnulib module isblank shall be considered present. */
112 #undef GNULIB_ISBLANK
114 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
115 whether the gnulib module lock shall be considered present. */
118 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
119 whether the gnulib module mkostemp shall be considered present. */
120 #undef GNULIB_MKOSTEMP
122 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
123 whether the gnulib module msvc-nothrow shall be considered present. */
124 #undef GNULIB_MSVC_NOTHROW
126 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
127 whether the gnulib module openat shall be considered present. */
130 /* Define to 1 if printf and friends should be labeled with attribute
131 "__gnu_printf__" instead of "__printf__" */
132 #undef GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
134 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
135 whether the gnulib module scanf shall be considered present. */
138 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
139 whether the gnulib module strerror shall be considered present. */
140 #undef GNULIB_STRERROR
142 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
143 whether the gnulib module strerror_r-posix shall be considered present. */
144 #undef GNULIB_STRERROR_R_POSIX
146 /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
147 whether the gnulib module tempname shall be considered present. */
148 #undef GNULIB_TEMPNAME
150 /* Define to 1 when the gnulib module accept should be tested. */
151 #undef GNULIB_TEST_ACCEPT
153 /* Define to 1 when the gnulib module bind should be tested. */
154 #undef GNULIB_TEST_BIND
156 /* Define to 1 when the gnulib module btowc should be tested. */
157 #undef GNULIB_TEST_BTOWC
159 /* Define to 1 when the gnulib module canonicalize_file_name should be tested.
161 #undef GNULIB_TEST_CANONICALIZE_FILE_NAME
163 /* Define to 1 when the gnulib module chdir should be tested. */
164 #undef GNULIB_TEST_CHDIR
166 /* Define to 1 when the gnulib module chown should be tested. */
167 #undef GNULIB_TEST_CHOWN
169 /* Define to 1 when the gnulib module cloexec should be tested. */
170 #undef GNULIB_TEST_CLOEXEC
172 /* Define to 1 when the gnulib module close should be tested. */
173 #undef GNULIB_TEST_CLOSE
175 /* Define to 1 when the gnulib module closedir should be tested. */
176 #undef GNULIB_TEST_CLOSEDIR
178 /* Define to 1 when the gnulib module connect should be tested. */
179 #undef GNULIB_TEST_CONNECT
181 /* Define to 1 when the gnulib module dirfd should be tested. */
182 #undef GNULIB_TEST_DIRFD
184 /* Define to 1 when the gnulib module dup should be tested. */
185 #undef GNULIB_TEST_DUP
187 /* Define to 1 when the gnulib module dup2 should be tested. */
188 #undef GNULIB_TEST_DUP2
190 /* Define to 1 when the gnulib module environ should be tested. */
191 #undef GNULIB_TEST_ENVIRON
193 /* Define to 1 when the gnulib module fchdir should be tested. */
194 #undef GNULIB_TEST_FCHDIR
196 /* Define to 1 when the gnulib module fcntl should be tested. */
197 #undef GNULIB_TEST_FCNTL
199 /* Define to 1 when the gnulib module fdopendir should be tested. */
200 #undef GNULIB_TEST_FDOPENDIR
202 /* Define to 1 when the gnulib module fgetc should be tested. */
203 #undef GNULIB_TEST_FGETC
205 /* Define to 1 when the gnulib module fgets should be tested. */
206 #undef GNULIB_TEST_FGETS
208 /* Define to 1 when the gnulib module fnmatch should be tested. */
209 #undef GNULIB_TEST_FNMATCH
211 /* Define to 1 when the gnulib module fprintf should be tested. */
212 #undef GNULIB_TEST_FPRINTF
214 /* Define to 1 when the gnulib module fputc should be tested. */
215 #undef GNULIB_TEST_FPUTC
217 /* Define to 1 when the gnulib module fputs should be tested. */
218 #undef GNULIB_TEST_FPUTS
220 /* Define to 1 when the gnulib module fread should be tested. */
221 #undef GNULIB_TEST_FREAD
223 /* Define to 1 when the gnulib module free-posix should be tested. */
224 #undef GNULIB_TEST_FREE_POSIX
226 /* Define to 1 when the gnulib module frexp should be tested. */
227 #undef GNULIB_TEST_FREXP
229 /* Define to 1 when the gnulib module frexpl should be tested. */
230 #undef GNULIB_TEST_FREXPL
232 /* Define to 1 when the gnulib module fscanf should be tested. */
233 #undef GNULIB_TEST_FSCANF
235 /* Define to 1 when the gnulib module fstat should be tested. */
236 #undef GNULIB_TEST_FSTAT
238 /* Define to 1 when the gnulib module fstatat should be tested. */
239 #undef GNULIB_TEST_FSTATAT
241 /* Define to 1 when the gnulib module fwrite should be tested. */
242 #undef GNULIB_TEST_FWRITE
244 /* Define to 1 when the gnulib module getc should be tested. */
245 #undef GNULIB_TEST_GETC
247 /* Define to 1 when the gnulib module getchar should be tested. */
248 #undef GNULIB_TEST_GETCHAR
250 /* Define to 1 when the gnulib module getcwd should be tested. */
251 #undef GNULIB_TEST_GETCWD
253 /* Define to 1 when the gnulib module getdelim should be tested. */
254 #undef GNULIB_TEST_GETDELIM
256 /* Define to 1 when the gnulib module getdtablesize should be tested. */
257 #undef GNULIB_TEST_GETDTABLESIZE
259 /* Define to 1 when the gnulib module getline should be tested. */
260 #undef GNULIB_TEST_GETLINE
262 /* Define to 1 when the gnulib module getlogin_r should be tested. */
263 #undef GNULIB_TEST_GETLOGIN_R
265 /* Define to 1 when the gnulib module getrandom should be tested. */
266 #undef GNULIB_TEST_GETRANDOM
268 /* Define to 1 when the gnulib module gettimeofday should be tested. */
269 #undef GNULIB_TEST_GETTIMEOFDAY
271 /* Define to 1 when the gnulib module glob should be tested. */
272 #undef GNULIB_TEST_GLOB
274 /* Define to 1 when the gnulib module listen should be tested. */
275 #undef GNULIB_TEST_LISTEN
277 /* Define to 1 when the gnulib module lstat should be tested. */
278 #undef GNULIB_TEST_LSTAT
280 /* Define to 1 when the gnulib module malloc-posix should be tested. */
281 #undef GNULIB_TEST_MALLOC_POSIX
283 /* Define to 1 when the gnulib module mbrtowc should be tested. */
284 #undef GNULIB_TEST_MBRTOWC
286 /* Define to 1 when the gnulib module mbsinit should be tested. */
287 #undef GNULIB_TEST_MBSINIT
289 /* Define to 1 when the gnulib module mbsrtowcs should be tested. */
290 #undef GNULIB_TEST_MBSRTOWCS
292 /* Define to 1 when the gnulib module mbtowc should be tested. */
293 #undef GNULIB_TEST_MBTOWC
295 /* Define to 1 when the gnulib module memchr should be tested. */
296 #undef GNULIB_TEST_MEMCHR
298 /* Define to 1 when the gnulib module memmem should be tested. */
299 #undef GNULIB_TEST_MEMMEM
301 /* Define to 1 when the gnulib module mempcpy should be tested. */
302 #undef GNULIB_TEST_MEMPCPY
304 /* Define to 1 when the gnulib module memrchr should be tested. */
305 #undef GNULIB_TEST_MEMRCHR
307 /* Define to 1 when the gnulib module mkdir should be tested. */
308 #undef GNULIB_TEST_MKDIR
310 /* Define to 1 when the gnulib module mkdtemp should be tested. */
311 #undef GNULIB_TEST_MKDTEMP
313 /* Define to 1 when the gnulib module mkostemp should be tested. */
314 #undef GNULIB_TEST_MKOSTEMP
316 /* Define to 1 when the gnulib module open should be tested. */
317 #undef GNULIB_TEST_OPEN
319 /* Define to 1 when the gnulib module openat should be tested. */
320 #undef GNULIB_TEST_OPENAT
322 /* Define to 1 when the gnulib module opendir should be tested. */
323 #undef GNULIB_TEST_OPENDIR
325 /* Define to 1 when the gnulib module pipe should be tested. */
326 #undef GNULIB_TEST_PIPE
328 /* Define to 1 when the gnulib module printf should be tested. */
329 #undef GNULIB_TEST_PRINTF
331 /* Define to 1 when the gnulib module putc should be tested. */
332 #undef GNULIB_TEST_PUTC
334 /* Define to 1 when the gnulib module putchar should be tested. */
335 #undef GNULIB_TEST_PUTCHAR
337 /* Define to 1 when the gnulib module puts should be tested. */
338 #undef GNULIB_TEST_PUTS
340 /* Define to 1 when the gnulib module rawmemchr should be tested. */
341 #undef GNULIB_TEST_RAWMEMCHR
343 /* Define to 1 when the gnulib module readdir should be tested. */
344 #undef GNULIB_TEST_READDIR
346 /* Define to 1 when the gnulib module readlink should be tested. */
347 #undef GNULIB_TEST_READLINK
349 /* Define to 1 when the gnulib module realloc-posix should be tested. */
350 #undef GNULIB_TEST_REALLOC_POSIX
352 /* Define to 1 when the gnulib module realpath should be tested. */
353 #undef GNULIB_TEST_REALPATH
355 /* Define to 1 when the gnulib module rename should be tested. */
356 #undef GNULIB_TEST_RENAME
358 /* Define to 1 when the gnulib module rewinddir should be tested. */
359 #undef GNULIB_TEST_REWINDDIR
361 /* Define to 1 when the gnulib module rmdir should be tested. */
362 #undef GNULIB_TEST_RMDIR
364 /* Define to 1 when the gnulib module scanf should be tested. */
365 #undef GNULIB_TEST_SCANF
367 /* Define to 1 when the gnulib module select should be tested. */
368 #undef GNULIB_TEST_SELECT
370 /* Define to 1 when the gnulib module setenv should be tested. */
371 #undef GNULIB_TEST_SETENV
373 /* Define to 1 when the gnulib module setlocale_null should be tested. */
374 #undef GNULIB_TEST_SETLOCALE_NULL
376 /* Define to 1 when the gnulib module setsockopt should be tested. */
377 #undef GNULIB_TEST_SETSOCKOPT
379 /* Define to 1 when the gnulib module socket should be tested. */
380 #undef GNULIB_TEST_SOCKET
382 /* Define to 1 when the gnulib module stat should be tested. */
383 #undef GNULIB_TEST_STAT
385 /* Define to 1 when the gnulib module strchrnul should be tested. */
386 #undef GNULIB_TEST_STRCHRNUL
388 /* Define to 1 when the gnulib module strdup should be tested. */
389 #undef GNULIB_TEST_STRDUP
391 /* Define to 1 when the gnulib module strerror should be tested. */
392 #undef GNULIB_TEST_STRERROR
394 /* Define to 1 when the gnulib module strerror_r should be tested. */
395 #undef GNULIB_TEST_STRERROR_R
397 /* Define to 1 when the gnulib module strnlen should be tested. */
398 #undef GNULIB_TEST_STRNLEN
400 /* Define to 1 when the gnulib module strstr should be tested. */
401 #undef GNULIB_TEST_STRSTR
403 /* Define to 1 when the gnulib module strtok_r should be tested. */
404 #undef GNULIB_TEST_STRTOK_R
406 /* Define to 1 when the gnulib module time_r should be tested. */
407 #undef GNULIB_TEST_TIME_R
409 /* Define to 1 when the gnulib module unsetenv should be tested. */
410 #undef GNULIB_TEST_UNSETENV
412 /* Define to 1 when the gnulib module vfprintf should be tested. */
413 #undef GNULIB_TEST_VFPRINTF
415 /* Define to 1 when the gnulib module vprintf should be tested. */
416 #undef GNULIB_TEST_VPRINTF
418 /* Define to 1 when the gnulib module wmemchr should be tested. */
419 #undef GNULIB_TEST_WMEMCHR
421 /* Define to 1 when the gnulib module wmempcpy should be tested. */
422 #undef GNULIB_TEST_WMEMPCPY
424 /* Define to 1 if you have 'alloca' after including <alloca.h>, a header that
425 may be supplied by this distribution. */
428 /* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
432 /* Define to 1 if you have the <arpa/inet.h> header file. */
433 #undef HAVE_ARPA_INET_H
435 /* Define to 1 if you have the <bcrypt.h> header file. */
438 /* Define to 1 if you have the <bp-sym.h> header file. */
441 /* Define to 1 if you have the `btowc' function. */
444 /* Define to 1 if you have the `canonicalize_file_name' function. */
445 #undef HAVE_CANONICALIZE_FILE_NAME
447 /* Define to 1 if you have the `catgets' function. */
450 /* Define to 1 if you have the `chown' function. */
453 /* Define to 1 if you have the `clock_getres' function. */
454 #undef HAVE_CLOCK_GETRES
456 /* Define to 1 if you have the `clock_gettime' function. */
457 #undef HAVE_CLOCK_GETTIME
459 /* Define to 1 if you have the `clock_settime' function. */
460 #undef HAVE_CLOCK_SETTIME
462 /* Define to 1 if you have the `closedir' function. */
465 /* Define to 1 if you have the <crtdefs.h> header file. */
466 #undef HAVE_CRTDEFS_H
468 /* Define to 1 if C supports variable-length arrays. */
469 #undef HAVE_C_VARARRAYS
471 /* Define to 1 if you have the declaration of `alarm', and to 0 if you don't.
473 #undef HAVE_DECL_ALARM
475 /* Define to 1 if you have the declaration of `dirfd', and to 0 if you don't.
477 #undef HAVE_DECL_DIRFD
479 /* Define to 1 if you have the declaration of `ecvt', and to 0 if you don't.
481 #undef HAVE_DECL_ECVT
483 /* Define to 1 if you have the declaration of `execvpe', and to 0 if you
485 #undef HAVE_DECL_EXECVPE
487 /* Define to 1 if you have the declaration of `fchdir', and to 0 if you don't.
489 #undef HAVE_DECL_FCHDIR
491 /* Define to 1 if you have the declaration of `fcloseall', and to 0 if you
493 #undef HAVE_DECL_FCLOSEALL
495 /* Define to 1 if you have the declaration of `fcvt', and to 0 if you don't.
497 #undef HAVE_DECL_FCVT
499 /* Define to 1 if you have the declaration of `fdopendir', and to 0 if you
501 #undef HAVE_DECL_FDOPENDIR
503 /* Define to 1 if you have the declaration of `gcvt', and to 0 if you don't.
505 #undef HAVE_DECL_GCVT
507 /* Define to 1 if you have the declaration of `getcwd', and to 0 if you don't.
509 #undef HAVE_DECL_GETCWD
511 /* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
513 #undef HAVE_DECL_GETC_UNLOCKED
515 /* Define to 1 if you have the declaration of `getdelim', and to 0 if you
517 #undef HAVE_DECL_GETDELIM
519 /* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you
521 #undef HAVE_DECL_GETDTABLESIZE
523 /* Define to 1 if you have the declaration of `getline', and to 0 if you
525 #undef HAVE_DECL_GETLINE
527 /* Define to 1 if you have the declaration of `getlogin', and to 0 if you
529 #undef HAVE_DECL_GETLOGIN
531 /* Define to 1 if you have the declaration of `getlogin_r', and to 0 if you
533 #undef HAVE_DECL_GETLOGIN_R
535 /* Define to 1 if you have the declaration of `inet_ntop', and to 0 if you
537 #undef HAVE_DECL_INET_NTOP
539 /* Define to 1 if you have the declaration of `localtime_r', and to 0 if you
541 #undef HAVE_DECL_LOCALTIME_R
543 /* Define to 1 if you have the declaration of `mbrtowc', and to 0 if you
545 #undef HAVE_DECL_MBRTOWC
547 /* Define to 1 if you have the declaration of `mbsinit', and to 0 if you
549 #undef HAVE_DECL_MBSINIT
551 /* Define to 1 if you have the declaration of `mbsrtowcs', and to 0 if you
553 #undef HAVE_DECL_MBSRTOWCS
555 /* Define to 1 if you have the declaration of `memmem', and to 0 if you don't.
557 #undef HAVE_DECL_MEMMEM
559 /* Define to 1 if you have the declaration of `memrchr', and to 0 if you
561 #undef HAVE_DECL_MEMRCHR
563 /* Define to 1 if you have the declaration of `program_invocation_name', and
564 to 0 if you don't. */
565 #undef HAVE_DECL_PROGRAM_INVOCATION_NAME
567 /* Define to 1 if you have the declaration of `program_invocation_short_name',
568 and to 0 if you don't. */
569 #undef HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
571 /* Define to 1 if you have the declaration of `setenv', and to 0 if you don't.
573 #undef HAVE_DECL_SETENV
575 /* Define to 1 if you have the declaration of `strdup', and to 0 if you don't.
577 #undef HAVE_DECL_STRDUP
579 /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
581 #undef HAVE_DECL_STRERROR_R
583 /* Define to 1 if you have the declaration of `strnlen', and to 0 if you
585 #undef HAVE_DECL_STRNLEN
587 /* Define to 1 if you have the declaration of `strtok_r', and to 0 if you
589 #undef HAVE_DECL_STRTOK_R
591 /* Define to 1 if you have the declaration of `towlower', and to 0 if you
593 #undef HAVE_DECL_TOWLOWER
595 /* Define to 1 if you have the declaration of `unsetenv', and to 0 if you
597 #undef HAVE_DECL_UNSETENV
599 /* Define to 1 if you have the declaration of `wcsdup', and to 0 if you don't.
601 #undef HAVE_DECL_WCSDUP
603 /* Define to 1 if you have the declaration of `__argv', and to 0 if you don't.
605 #undef HAVE_DECL___ARGV
607 /* Define to 1 if you have the <dirent.h> header file. */
610 /* Define to 1 if you have the `dirfd' function. */
613 /* Define to 1 if you have the <dlfcn.h> header file. */
616 /* Define if you have the declaration of environ. */
617 #undef HAVE_ENVIRON_DECL
619 /* Define to 1 if you have the `faccessat' function. */
620 #undef HAVE_FACCESSAT
622 /* Define to 1 if you have the `fchdir' function. */
625 /* Define to 1 if you have the `fchown' function. */
628 /* Define to 1 if you have the `fcntl' function. */
631 /* Define to 1 if you have the `fdopendir' function. */
632 #undef HAVE_FDOPENDIR
634 /* Define to 1 if you have the <features.h> header file. */
635 #undef HAVE_FEATURES_H
637 /* Define to 1 if you have the `flockfile' function. */
638 #undef HAVE_FLOCKFILE
640 /* Define to 1 if you have the `fnmatch' function. */
643 /* Define to 1 if you have the <fnmatch.h> header file. */
644 #undef HAVE_FNMATCH_H
646 /* Define if the 'free' function is guaranteed to preserve errno. */
647 #undef HAVE_FREE_POSIX
649 /* Define if the frexp() function is available and works. */
652 /* Define if the frexpl() function is available. */
655 /* Define to 1 if you have the `fstatat' function. */
658 /* Define to 1 if you have the `funlockfile' function. */
659 #undef HAVE_FUNLOCKFILE
661 /* Define to 1 if you have the `getcwd' function. */
664 /* Define to 1 if getcwd works, but with shorter paths than is generally
665 tested with the replacement. */
666 #undef HAVE_GETCWD_SHORTER
668 /* Define to 1 if you have the `getdelim' function. */
671 /* Define to 1 if you have the `getdtablesize' function. */
672 #undef HAVE_GETDTABLESIZE
674 /* Define to 1 if you have the `getexecname' function. */
675 #undef HAVE_GETEXECNAME
677 /* Define to 1 if you have the `getlogin_r' function. */
678 #undef HAVE_GETLOGIN_R
680 /* Define to 1 if the system has the 'getpagesize' function. */
681 #undef HAVE_GETPAGESIZE
683 /* Define to 1 if you have the `getprogname' function. */
684 #undef HAVE_GETPROGNAME
686 /* Define to 1 if you have the `getpwnam_r' function. */
687 #undef HAVE_GETPWNAM_R
689 /* Define to 1 if you have the `getrandom' function. */
690 #undef HAVE_GETRANDOM
692 /* Define to 1 if you have the `gettimeofday' function. */
693 #undef HAVE_GETTIMEOFDAY
695 /* Define to 1 if you have the `glob' function. */
698 /* Define to 1 if you have the <glob.h> header file. */
701 /* Define to 1 if you have the `glob_pattern_p' function. */
702 #undef HAVE_GLOB_PATTERN_P
704 /* Define to 1 if you have the `inet_ntop' function. */
705 #undef HAVE_INET_NTOP
707 /* Define to 1 if you have the <inttypes.h> header file. */
708 #undef HAVE_INTTYPES_H
710 /* Define to 1 if <sys/socket.h> defines AF_INET. */
713 /* Define to 1 if <sys/socket.h> defines AF_INET6. */
716 /* Define to 1 if you have the `isblank' function. */
719 /* Define if the isnan(double) function is available in libc. */
720 #undef HAVE_ISNAND_IN_LIBC
722 /* Define if the isnan(long double) function is available in libc. */
723 #undef HAVE_ISNANL_IN_LIBC
725 /* Define to 1 if you have the `iswcntrl' function. */
728 /* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
729 #undef HAVE_LANGINFO_CODESET
731 /* Define to 1 if the bcrypt library is guaranteed to be present. */
732 #undef HAVE_LIB_BCRYPT
734 /* Define to 1 if you have the <limits.h> header file. */
737 /* Define to 1 if you have the `link' function. */
740 /* Define to 1 if you have the `localtime_r' function. */
741 #undef HAVE_LOCALTIME_R
743 /* Define to 1 if the system has the type 'long long int'. */
744 #undef HAVE_LONG_LONG_INT
746 /* Define to 1 if you have the `lstat' function. */
749 /* Define if malloc, realloc, and calloc set errno on allocation failure. */
750 #undef HAVE_MALLOC_POSIX
752 /* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including
753 config.h and <sys/mman.h>. */
754 #undef HAVE_MAP_ANONYMOUS
756 /* Define to 1 if you have the <math.h> header file. */
759 /* Define to 1 if you have the `mbrtowc' function. */
762 /* Define to 1 if you have the `mbsinit' function. */
765 /* Define to 1 if you have the `mbsrtowcs' function. */
766 #undef HAVE_MBSRTOWCS
768 /* Define to 1 if <wchar.h> declares mbstate_t. */
769 #undef HAVE_MBSTATE_T
771 /* Define to 1 if you have the `mbtowc' function. */
774 /* Define to 1 if you have the `memmem' function. */
777 /* Define to 1 if you have the <memory.h> header file. */
780 /* Define to 1 if you have the `mempcpy' function. */
783 /* Define to 1 if you have the `memrchr' function. */
786 /* Define to 1 if getcwd minimally works, that is, its result can be trusted
788 #undef HAVE_MINIMALLY_WORKING_GETCWD
790 /* Define to 1 if you have the <minix/config.h> header file. */
791 #undef HAVE_MINIX_CONFIG_H
793 /* Define to 1 if <limits.h> defines the MIN and MAX macros. */
794 #undef HAVE_MINMAX_IN_LIMITS_H
796 /* Define to 1 if <sys/param.h> defines the MIN and MAX macros. */
797 #undef HAVE_MINMAX_IN_SYS_PARAM_H
799 /* Define to 1 if you have the `mkdtemp' function. */
802 /* Define to 1 if you have the `mkostemp' function. */
805 /* Define to 1 if you have the `mprotect' function. */
808 /* Define to 1 on MSVC platforms that have the "invalid parameter handler"
810 #undef HAVE_MSVC_INVALID_PARAMETER_HANDLER
812 /* Define to 1 if you have the <netdb.h> header file. */
815 /* Define to 1 if you have the <netinet/in.h> header file. */
816 #undef HAVE_NETINET_IN_H
818 /* Define to 1 if you have the `openat' function. */
821 /* Define to 1 if you have the `opendir' function. */
824 /* Define to 1 if getcwd works, except it sometimes fails when it shouldn't,
825 setting errno to ERANGE, ENAMETOOLONG, or ENOENT. */
826 #undef HAVE_PARTLY_WORKING_GETCWD
828 /* Define to 1 if you have the `pipe' function. */
831 /* Define if you have the <pthread.h> header and the POSIX threads API. */
832 #undef HAVE_PTHREAD_API
834 /* Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE. */
835 #undef HAVE_PTHREAD_MUTEX_RECURSIVE
837 /* Define if the POSIX multithreading library has read/write locks. */
838 #undef HAVE_PTHREAD_RWLOCK
840 /* Define if the 'pthread_rwlock_rdlock' function prefers a writer to a
842 #undef HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER
844 /* Define to 1 if you have the `rawmemchr' function. */
845 #undef HAVE_RAWMEMCHR
847 /* Define to 1 if you have the `readdir' function. */
850 /* Define to 1 if you have the `readlink' function. */
853 /* Define to 1 if you have the `realpath' function. */
856 /* Define to 1 if you have the `rewinddir' function. */
857 #undef HAVE_REWINDDIR
859 /* Define to 1 if 'long double' and 'double' have the same representation. */
860 #undef HAVE_SAME_LONG_DOUBLE_AS_DOUBLE
862 /* Define to 1 if the system has the type `sa_family_t'. */
863 #undef HAVE_SA_FAMILY_T
865 /* Define to 1 if you have the <sdkddkver.h> header file. */
866 #undef HAVE_SDKDDKVER_H
868 /* Define to 1 if you have the <search.h> header file. */
871 /* Define to 1 if you have the `setdtablesize' function. */
872 #undef HAVE_SETDTABLESIZE
874 /* Define to 1 if you have the `setenv' function. */
877 /* Define to 1 if you have the `shutdown' function. */
880 /* Define to 1 if 'sig_atomic_t' is a signed integer type. */
881 #undef HAVE_SIGNED_SIG_ATOMIC_T
883 /* Define to 1 if 'wchar_t' is a signed integer type. */
884 #undef HAVE_SIGNED_WCHAR_T
886 /* Define to 1 if 'wint_t' is a signed integer type. */
887 #undef HAVE_SIGNED_WINT_T
889 /* Define to 1 if the system has the type `sigset_t'. */
892 /* Define to 1 if you have the `snprintf' function. */
895 /* Define to 1 if you have the <stdint.h> header file. */
898 /* Define to 1 if you have the <stdlib.h> header file. */
901 /* Define to 1 if you have the `strchrnul' function. */
902 #undef HAVE_STRCHRNUL
904 /* Define to 1 if you have the `strerror_r' function. */
905 #undef HAVE_STRERROR_R
907 /* Define to 1 if you have the <strings.h> header file. */
908 #undef HAVE_STRINGS_H
910 /* Define to 1 if you have the <string.h> header file. */
913 /* Define to 1 if you have the `strtok_r' function. */
916 /* Define if there is a member named d_type in the struct describing directory
918 #undef HAVE_STRUCT_DIRENT_D_TYPE
920 /* Define to 1 if the system has the type `struct sockaddr_storage'. */
921 #undef HAVE_STRUCT_SOCKADDR_STORAGE
923 /* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */
924 #undef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY
926 /* Define to 1 if `st_atimensec' is a member of `struct stat'. */
927 #undef HAVE_STRUCT_STAT_ST_ATIMENSEC
929 /* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */
930 #undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC
932 /* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */
933 #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC
935 /* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */
936 #undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC
938 /* Define to 1 if `st_birthtimensec' is a member of `struct stat'. */
939 #undef HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC
941 /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */
942 #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC
944 /* Define to 1 if `st_birthtim.tv_nsec' is a member of `struct stat'. */
945 #undef HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC
947 /* Define to 1 if you have the `symlink' function. */
950 /* Define to 1 if you have the <sys/bitypes.h> header file. */
951 #undef HAVE_SYS_BITYPES_H
953 /* Define to 1 if you have the <sys/inttypes.h> header file. */
954 #undef HAVE_SYS_INTTYPES_H
956 /* Define to 1 if you have the <sys/mman.h> header file. */
957 #undef HAVE_SYS_MMAN_H
959 /* Define to 1 if you have the <sys/param.h> header file. */
960 #undef HAVE_SYS_PARAM_H
962 /* Define to 1 if you have the <sys/random.h> header file. */
963 #undef HAVE_SYS_RANDOM_H
965 /* Define to 1 if you have the <sys/select.h> header file. */
966 #undef HAVE_SYS_SELECT_H
968 /* Define to 1 if you have the <sys/socket.h> header file. */
969 #undef HAVE_SYS_SOCKET_H
971 /* Define to 1 if you have the <sys/stat.h> header file. */
972 #undef HAVE_SYS_STAT_H
974 /* Define to 1 if you have the <sys/time.h> header file. */
975 #undef HAVE_SYS_TIME_H
977 /* Define to 1 if you have the <sys/types.h> header file. */
978 #undef HAVE_SYS_TYPES_H
980 /* Define to 1 if you have the <sys/uio.h> header file. */
981 #undef HAVE_SYS_UIO_H
983 /* Define to 1 if you have the <sys/wait.h> header file. */
984 #undef HAVE_SYS_WAIT_H
986 /* Define to 1 if you have the `thrd_create' function. */
987 #undef HAVE_THRD_CREATE
989 /* Define to 1 if you have the <threads.h> header file. */
990 #undef HAVE_THREADS_H
992 /* Define to 1 if you have the `towlower' function. */
995 /* Define to 1 if you have the `tsearch' function. */
998 /* Define to 1 if you have the <unistd.h> header file. */
1001 /* Define to 1 if you have the `unsetenv' function. */
1002 #undef HAVE_UNSETENV
1004 /* Define to 1 if the system has the type 'unsigned long long int'. */
1005 #undef HAVE_UNSIGNED_LONG_LONG_INT
1007 /* Define if you have a global __progname variable */
1008 #undef HAVE_VAR___PROGNAME
1010 /* Define to 1 or 0, depending whether the compiler supports simple visibility
1012 #undef HAVE_VISIBILITY
1014 /* Define to 1 if you have the <wchar.h> header file. */
1017 /* Define if you have the 'wchar_t' type. */
1020 /* Define to 1 if you have the <wctype.h> header file. */
1021 #undef HAVE_WCTYPE_H
1023 /* Define to 1 if the compiler and linker support weak declarations of
1025 #undef HAVE_WEAK_SYMBOLS
1027 /* Define to 1 if you have the <windows.h> header file. */
1028 #undef HAVE_WINDOWS_H
1030 /* Define to 1 if you have the <winsock2.h> header file. */
1031 #undef HAVE_WINSOCK2_H
1033 /* Define if you have the 'wint_t' type. */
1036 /* Define to 1 if you have the `wmempcpy' function. */
1037 #undef HAVE_WMEMPCPY
1039 /* Define to 1 if fstatat (..., 0) works. For example, it does not work in AIX
1041 #undef HAVE_WORKING_FSTATAT_ZERO_FLAG
1043 /* Define to 1 if O_NOATIME works. */
1044 #undef HAVE_WORKING_O_NOATIME
1046 /* Define to 1 if O_NOFOLLOW works. */
1047 #undef HAVE_WORKING_O_NOFOLLOW
1049 /* Define to 1 if you have the <ws2tcpip.h> header file. */
1050 #undef HAVE_WS2TCPIP_H
1052 /* Define to 1 if you have the <xlocale.h> header file. */
1053 #undef HAVE_XLOCALE_H
1055 /* Define to 1 if the system has the type `_Bool'. */
1058 /* Define to 1 if you have the `_set_invalid_parameter_handler' function. */
1059 #undef HAVE__SET_INVALID_PARAMETER_HANDLER
1061 /* Define to 1 if the compiler supports __builtin_expect,
1062 and to 2 if <builtins.h> does. */
1063 #undef HAVE___BUILTIN_EXPECT
1064 #ifndef HAVE___BUILTIN_EXPECT
1065 # define __builtin_expect(e, c) (e)
1066 #elif HAVE___BUILTIN_EXPECT == 2
1067 # include <builtins.h>
1071 /* Define to 1 if ctype.h defines __header_inline. */
1072 #undef HAVE___HEADER_INLINE
1074 /* Please see the Gnulib manual for how to use these macros.
1076 Suppress extern inline with HP-UX cc, as it appears to be broken; see
1077 <https://lists.gnu.org/r/bug-texinfo/2013-02/msg00030.html>.
1079 Suppress extern inline with Sun C in standards-conformance mode, as it
1080 mishandles inline functions that call each other. E.g., for 'inline void f
1081 (void) { } inline void g (void) { f (); }', c99 incorrectly complains
1082 'reference to static identifier "f" in extern inline function'.
1083 This bug was observed with Oracle Developer Studio 12.6
1084 (Sun C 5.15 SunOS_sparc 2017/05/30).
1086 Suppress extern inline (with or without __attribute__ ((__gnu_inline__)))
1087 on configurations that mistakenly use 'static inline' to implement
1088 functions or macros in standard C headers like <ctype.h>. For example,
1089 if isdigit is mistakenly implemented via a static inline function,
1090 a program containing an extern inline function that calls isdigit
1091 may not work since the C standard prohibits extern inline functions
1092 from calling static functions (ISO C 99 section 6.7.4.(3).
1093 This bug is known to occur on:
1095 OS X 10.8 and earlier; see:
1096 https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
1099 http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
1102 https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
1104 OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
1105 for clang but remains for g++; see <https://trac.macports.org/ticket/41033>.
1106 Assume DragonFly and FreeBSD will be similar.
1108 GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
1109 inline semantics, unless -fgnu89-inline is used. It defines a macro
1110 __GNUC_STDC_INLINE__ to indicate this situation or a macro
1111 __GNUC_GNU_INLINE__ to indicate the opposite situation.
1112 GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline
1113 semantics but warns, unless -fgnu89-inline is used:
1114 warning: C99 inline functions are not supported; using GNU89
1115 warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute
1116 It defines a macro __GNUC_GNU_INLINE__ to indicate this situation.
1118 #if (((defined __APPLE__ && defined __MACH__) \
1119 || defined __DragonFly__ || defined __FreeBSD__) \
1120 && (defined HAVE___HEADER_INLINE \
1121 ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \
1122 && ! defined __clang__) \
1123 : ((! defined _DONT_USE_CTYPE_INLINE_ \
1124 && (defined __GNUC__ || defined __cplusplus)) \
1125 || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
1126 && defined __GNUC__ && ! defined __cplusplus))))
1127 # define _GL_EXTERN_INLINE_STDHEADER_BUG
1130 ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
1131 : (199901L <= __STDC_VERSION__ \
1132 && !defined __HP_cc \
1134 && !(defined __SUNPRO_C && __STDC__))) \
1135 && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
1136 # define _GL_INLINE inline
1137 # define _GL_EXTERN_INLINE extern inline
1138 # define _GL_EXTERN_INLINE_IN_USE
1139 #elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
1140 && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
1141 # if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__
1142 /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */
1143 # define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
1145 # define _GL_INLINE extern inline
1147 # define _GL_EXTERN_INLINE extern
1148 # define _GL_EXTERN_INLINE_IN_USE
1150 # define _GL_INLINE _GL_UNUSED static
1151 # define _GL_EXTERN_INLINE _GL_UNUSED static
1154 /* In GCC 4.6 (inclusive) to 5.1 (exclusive),
1155 suppress bogus "no previous prototype for 'FOO'"
1156 and "no previous declaration for 'FOO'" diagnostics,
1157 when FOO is an inline function in the header; see
1158 <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and
1159 <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>. */
1160 #if __GNUC__ == 4 && 6 <= __GNUC_MINOR__
1161 # if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__
1162 # define _GL_INLINE_HEADER_CONST_PRAGMA
1164 # define _GL_INLINE_HEADER_CONST_PRAGMA \
1165 _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"")
1167 # define _GL_INLINE_HEADER_BEGIN \
1168 _Pragma ("GCC diagnostic push") \
1169 _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \
1170 _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \
1171 _GL_INLINE_HEADER_CONST_PRAGMA
1172 # define _GL_INLINE_HEADER_END \
1173 _Pragma ("GCC diagnostic pop")
1175 # define _GL_INLINE_HEADER_BEGIN
1176 # define _GL_INLINE_HEADER_END
1179 /* Define to 1 if the compiler supports the keyword '__inline'. */
1180 #undef HAVE___INLINE
1182 /* Define to 1 if you have the `__xpg_strerror_r' function. */
1183 #undef HAVE___XPG_STRERROR_R
1185 /* Define as the bit index in the word where to find bit 0 of the exponent of
1187 #undef LDBL_EXPBIT0_BIT
1189 /* Define as the word index where to find the exponent of 'long double'. */
1190 #undef LDBL_EXPBIT0_WORD
1192 /* Define to 1 if 'lstat' dereferences a symlink specified with a trailing
1194 #undef LSTAT_FOLLOWS_SLASHED_SYMLINK
1196 /* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */
1197 #undef MALLOC_0_IS_NONNULL
1199 /* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */
1200 #undef MAP_ANONYMOUS
1202 /* Define if the mbrtowc function does not return (size_t) -2 for empty input.
1204 #undef MBRTOWC_EMPTY_INPUT_BUG
1206 /* Define if the mbrtowc function may signal encoding errors in the C locale.
1208 #undef MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ
1210 /* Define if the mbrtowc function has the NULL pwc argument bug. */
1211 #undef MBRTOWC_NULL_ARG1_BUG
1213 /* Define if the mbrtowc function has the NULL string argument bug. */
1214 #undef MBRTOWC_NULL_ARG2_BUG
1216 /* Define if the mbrtowc function does not return 0 for a NUL character. */
1217 #undef MBRTOWC_NUL_RETVAL_BUG
1219 /* Define if the mbrtowc function returns a wrong return value. */
1220 #undef MBRTOWC_RETVAL_BUG
1222 /* Define if the mbrtowc function stores a wide character when reporting
1223 incomplete input. */
1224 #undef MBRTOWC_STORES_INCOMPLETE_BUG
1226 /* Use GNU style printf and scanf. */
1227 #ifndef __USE_MINGW_ANSI_STDIO
1228 # undef __USE_MINGW_ANSI_STDIO
1232 /* Define to 1 if open() fails to recognize a trailing slash. */
1233 #undef OPEN_TRAILING_SLASH_BUG
1235 /* Define to the address where bug reports for this package should be sent. */
1236 #undef PACKAGE_BUGREPORT
1238 /* Define to the full name of this package. */
1241 /* Define to the full name and version of this package. */
1242 #undef PACKAGE_STRING
1244 /* Define to the one symbol short name of this package. */
1245 #undef PACKAGE_TARNAME
1247 /* Define to the home page for this package. */
1250 /* Define to the version of this package. */
1251 #undef PACKAGE_VERSION
1253 /* Define to the type that is the result of default argument promotions of
1255 #undef PROMOTED_MODE_T
1257 /* Define if the pthread_in_use() detection is hard. */
1258 #undef PTHREAD_IN_USE_DETECTION_HARD
1260 /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1262 #undef PTRDIFF_T_SUFFIX
1264 /* Define to 1 if readlink fails to recognize a trailing slash. */
1265 #undef READLINK_TRAILING_SLASH_BUG
1267 /* Define to 1 if readlink sets errno instead of truncating a too-long link.
1269 #undef READLINK_TRUNCATE_BUG
1271 /* Define if rename does not work when the destination file exists, as on
1272 Cygwin 1.5 or Windows. */
1273 #undef RENAME_DEST_EXISTS_BUG
1275 /* Define if rename fails to leave hard links alone, as on NetBSD 1.6 or
1277 #undef RENAME_HARD_LINK_BUG
1279 /* Define if rename does not correctly handle slashes on the destination
1280 argument, such as on Solaris 11 or NetBSD 1.6. */
1281 #undef RENAME_TRAILING_SLASH_DEST_BUG
1283 /* Define if rename does not correctly handle slashes on the source argument,
1284 such as on Solaris 9 or cygwin 1.5. */
1285 #undef RENAME_TRAILING_SLASH_SOURCE_BUG
1287 /* Define to 1 if gnulib's dirfd() replacement is used. */
1288 #undef REPLACE_DIRFD
1290 /* Define to 1 if gnulib's fchdir() replacement is used. */
1291 #undef REPLACE_FCHDIR
1293 /* Define to 1 if stat needs help when passed a file name with a trailing
1295 #undef REPLACE_FUNC_STAT_FILE
1297 /* Define to 1 if open() should work around the inability to open a directory.
1299 #undef REPLACE_OPEN_DIRECTORY
1301 /* Define to 1 if strerror(0) does not return a message implying success. */
1302 #undef REPLACE_STRERROR_0
1304 /* Define to 1 if setlocale (LC_ALL, NULL) is multithread-safe. */
1305 #undef SETLOCALE_NULL_ALL_MTSAFE
1307 /* Define to 1 if setlocale (category, NULL) is multithread-safe. */
1308 #undef SETLOCALE_NULL_ONE_MTSAFE
1310 /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1312 #undef SIG_ATOMIC_T_SUFFIX
1314 /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1316 #undef SIZE_T_SUFFIX
1318 /* If using the C implementation of alloca, define if you know the
1319 direction of stack growth for your system; otherwise it will be
1320 automatically deduced at runtime.
1321 STACK_DIRECTION > 0 => grows toward higher addresses
1322 STACK_DIRECTION < 0 => grows toward lower addresses
1323 STACK_DIRECTION = 0 => direction of growth unknown */
1324 #undef STACK_DIRECTION
1326 /* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
1327 #undef STAT_MACROS_BROKEN
1329 /* Define to 1 if you have the ANSI C header files. */
1332 /* Define to 1 if strerror_r returns char *. */
1333 #undef STRERROR_R_CHAR_P
1335 /* Define to 1 if the type of the st_atim member of a struct stat is struct
1337 #undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC
1339 /* Define if the combination of the ISO C and POSIX multithreading APIs can be
1341 #undef USE_ISOC_AND_POSIX_THREADS
1343 /* Define if the ISO C multithreading library can be used. */
1344 #undef USE_ISOC_THREADS
1346 /* Define if the POSIX multithreading library can be used. */
1347 #undef USE_POSIX_THREADS
1349 /* Define if references to the POSIX multithreading library are satisfied by
1351 #undef USE_POSIX_THREADS_FROM_LIBC
1353 /* Define if references to the POSIX multithreading library should be made
1355 #undef USE_POSIX_THREADS_WEAK
1357 /* Enable extensions on AIX 3, Interix. */
1361 /* Enable general extensions on macOS. */
1362 #ifndef _DARWIN_C_SOURCE
1363 # undef _DARWIN_C_SOURCE
1365 /* Enable general extensions on Solaris. */
1366 #ifndef __EXTENSIONS__
1367 # undef __EXTENSIONS__
1369 /* Enable GNU extensions on systems that have them. */
1373 /* Enable X/Open compliant socket functions that do not require linking
1374 with -lxnet on HP-UX 11.11. */
1375 #ifndef _HPUX_ALT_XOPEN_SOCKET_API
1376 # undef _HPUX_ALT_XOPEN_SOCKET_API
1378 /* Identify the host operating system as Minix.
1379 This macro does not affect the system headers' behavior.
1380 A future release of Autoconf may stop defining this macro. */
1384 /* Enable general extensions on NetBSD.
1385 Enable NetBSD compatibility extensions on Minix. */
1386 #ifndef _NETBSD_SOURCE
1387 # undef _NETBSD_SOURCE
1389 /* Enable OpenBSD compatibility extensions on NetBSD.
1390 Oddly enough, this does nothing on OpenBSD. */
1391 #ifndef _OPENBSD_SOURCE
1392 # undef _OPENBSD_SOURCE
1394 /* Define to 1 if needed for POSIX-compatible behavior. */
1395 #ifndef _POSIX_SOURCE
1396 # undef _POSIX_SOURCE
1398 /* Define to 2 if needed for POSIX-compatible behavior. */
1399 #ifndef _POSIX_1_SOURCE
1400 # undef _POSIX_1_SOURCE
1402 /* Enable POSIX-compatible threading on Solaris. */
1403 #ifndef _POSIX_PTHREAD_SEMANTICS
1404 # undef _POSIX_PTHREAD_SEMANTICS
1406 /* Enable extensions specified by ISO/IEC TS 18661-5:2014. */
1407 #ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
1408 # undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
1410 /* Enable extensions specified by ISO/IEC TS 18661-1:2014. */
1411 #ifndef __STDC_WANT_IEC_60559_BFP_EXT__
1412 # undef __STDC_WANT_IEC_60559_BFP_EXT__
1414 /* Enable extensions specified by ISO/IEC TS 18661-2:2015. */
1415 #ifndef __STDC_WANT_IEC_60559_DFP_EXT__
1416 # undef __STDC_WANT_IEC_60559_DFP_EXT__
1418 /* Enable extensions specified by ISO/IEC TS 18661-4:2015. */
1419 #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
1420 # undef __STDC_WANT_IEC_60559_FUNCS_EXT__
1422 /* Enable extensions specified by ISO/IEC TS 18661-3:2015. */
1423 #ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
1424 # undef __STDC_WANT_IEC_60559_TYPES_EXT__
1426 /* Enable extensions specified by ISO/IEC TR 24731-2:2010. */
1427 #ifndef __STDC_WANT_LIB_EXT2__
1428 # undef __STDC_WANT_LIB_EXT2__
1430 /* Enable extensions specified by ISO/IEC 24747:2009. */
1431 #ifndef __STDC_WANT_MATH_SPEC_FUNCS__
1432 # undef __STDC_WANT_MATH_SPEC_FUNCS__
1434 /* Enable extensions on HP NonStop. */
1435 #ifndef _TANDEM_SOURCE
1436 # undef _TANDEM_SOURCE
1438 /* Enable X/Open extensions. Define to 500 only if necessary
1439 to make mbstate_t available. */
1440 #ifndef _XOPEN_SOURCE
1441 # undef _XOPEN_SOURCE
1445 /* Define if the native Windows multithreading API can be used. */
1446 #undef USE_WINDOWS_THREADS
1448 /* Define to 1 if unsetenv returns void instead of int. */
1449 #undef VOID_UNSETENV
1451 /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1453 #undef WCHAR_T_SUFFIX
1455 /* Define if WSAStartup is needed. */
1456 #undef WINDOWS_SOCKETS
1458 /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1460 #undef WINT_T_SUFFIX
1462 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
1463 significant byte first (like Motorola and SPARC, unlike Intel). */
1464 #if defined AC_APPLE_UNIVERSAL_BUILD
1465 # if defined __BIG_ENDIAN__
1466 # define WORDS_BIGENDIAN 1
1469 # ifndef WORDS_BIGENDIAN
1470 # undef WORDS_BIGENDIAN
1474 /* Number of bits in a file offset, on hosts where this is settable. */
1475 #undef _FILE_OFFSET_BITS
1477 /* True if the compiler says it groks GNU C version MAJOR.MINOR. */
1478 #if defined __GNUC__ && defined __GNUC_MINOR__
1479 # define _GL_GNUC_PREREQ(major, minor) \
1480 ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
1482 # define _GL_GNUC_PREREQ(major, minor) 0
1486 /* Define to enable the declarations of ISO C 11 types and functions. */
1487 #undef _ISOC11_SOURCE
1489 /* Define for large files, on AIX-style hosts. */
1492 /* Define to 1 on Solaris. */
1495 /* The _Noreturn keyword of C11. */
1497 # if (defined __cplusplus \
1498 && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
1499 || (defined _MSC_VER && 1900 <= _MSC_VER)) \
1501 /* [[noreturn]] is not practically usable, because with it the syntax
1502 extern _Noreturn void func (...);
1503 would not be valid; such a declaration would only be valid with 'extern'
1504 and '_Noreturn' swapped, or without the 'extern' keyword. However, some
1505 AIX system header files and several gnulib header files use precisely
1506 this syntax with 'extern'. */
1507 # define _Noreturn [[noreturn]]
1508 # elif ((!defined __cplusplus || defined __clang__) \
1509 && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
1510 || (!defined __STRICT_ANSI__ \
1511 && (_GL_GNUC_PREREQ (4, 7) \
1512 || (defined __apple_build_version__ \
1513 ? 6000000 <= __apple_build_version__ \
1514 : 3 < __clang_major__ + (5 <= __clang_minor__))))))
1515 /* _Noreturn works as-is. */
1516 # elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
1517 # define _Noreturn __attribute__ ((__noreturn__))
1518 # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
1519 # define _Noreturn __declspec (noreturn)
1526 /* Define to 1 in order to get the POSIX compatible declarations of socket
1528 #undef _POSIX_PII_SOCKET
1530 /* Number of bits in a timestamp, on hosts where this is settable. */
1533 /* For standard stat data types on VMS. */
1534 #undef _USE_STD_STAT
1536 /* For 64-bit time_t on 32-bit mingw. */
1537 #undef __MINGW_USE_VC2005_COMPAT
1539 /* Define to 1 if the system <stdint.h> predates C++11. */
1540 #undef __STDC_CONSTANT_MACROS
1542 /* Define to 1 if the system <stdint.h> predates C++11. */
1543 #undef __STDC_LIMIT_MACROS
1545 /* Define to 1 if C does not support variable-length arrays, and if the
1546 compiler does not already define this. */
1547 #undef __STDC_NO_VLA__
1549 /* The _GL_ASYNC_SAFE marker should be attached to functions that are
1550 signal handlers (for signals other than SIGABRT, SIGPIPE) or can be
1551 invoked from such signal handlers. Such functions have some restrictions:
1552 * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
1553 or should be listed as async-signal-safe in POSIX
1554 <https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
1555 section 2.4.3. Note that malloc(), sprintf(), and fwrite(), in
1556 particular, are NOT async-signal-safe.
1557 * All memory locations (variables and struct fields) that these functions
1558 access must be marked 'volatile'. This holds for both read and write
1559 accesses. Otherwise the compiler might optimize away stores to and
1560 reads from such locations that occur in the program, depending on its
1561 data flow analysis. For example, when the program contains a loop
1562 that is intended to inspect a variable set from within a signal handler
1563 while (!signal_occurred)
1565 the compiler is allowed to transform this into an endless loop if the
1566 variable 'signal_occurred' is not declared 'volatile'.
1567 Additionally, recall that:
1568 * A signal handler should not modify errno (except if it is a handler
1569 for a fatal signal and ends by raising the same signal again, thus
1570 provoking the termination of the process). If it invokes a function
1571 that may clobber errno, it needs to save and restore the value of
1573 #define _GL_ASYNC_SAFE
1577 #if (defined __has_attribute \
1578 && (!defined __clang_minor__ \
1579 || (defined __apple_build_version__ \
1580 ? 6000000 <= __apple_build_version__ \
1581 : 3 < __clang_major__ + (5 <= __clang_minor__))))
1582 # define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
1584 # define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
1585 # define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
1586 # define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
1587 # define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
1588 # define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
1589 # define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
1590 # define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
1591 # define _GL_ATTR_diagnose_if 0
1592 # define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
1593 # define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
1594 # define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
1595 # define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
1596 # define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
1597 # define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
1599 # define _GL_ATTR_may_alias 0
1601 # define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
1603 # define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
1604 # define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
1605 # define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
1606 # define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
1607 # define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
1608 # define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
1609 # define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
1610 # define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
1611 # define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
1612 # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
1615 #ifdef __has_c_attribute
1616 # if ((defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710 \
1617 && _GL_GNUC_PREREQ (4, 6))
1618 # pragma GCC diagnostic ignored "-Wpedantic"
1620 # define _GL_HAS_C_ATTRIBUTE(attr) __has_c_attribute (__##attr##__)
1622 # define _GL_HAS_C_ATTRIBUTE(attr) 0
1626 /* _GL_ATTRIBUTE_ALLOC_SIZE ((N)) declares that the Nth argument of the function
1627 is the size of the returned memory block.
1628 _GL_ATTRIBUTE_ALLOC_SIZE ((M, N)) declares that the Mth argument multiplied
1629 by the Nth argument of the function is the size of the returned memory block.
1631 /* Applies to: function, pointer to function, function types. */
1632 #if _GL_HAS_ATTRIBUTE (alloc_size)
1633 # define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
1635 # define _GL_ATTRIBUTE_ALLOC_SIZE(args)
1638 /* _GL_ATTRIBUTE_ALWAYS_INLINE tells that the compiler should always inline the
1639 function and report an error if it cannot do so. */
1640 /* Applies to: function. */
1641 #if _GL_HAS_ATTRIBUTE (always_inline)
1642 # define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
1644 # define _GL_ATTRIBUTE_ALWAYS_INLINE
1647 /* _GL_ATTRIBUTE_ARTIFICIAL declares that the function is not important to show
1648 in stack traces when debugging. The compiler should omit the function from
1650 /* Applies to: function. */
1651 #if _GL_HAS_ATTRIBUTE (artificial)
1652 # define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
1654 # define _GL_ATTRIBUTE_ARTIFICIAL
1657 /* _GL_ATTRIBUTE_COLD declares that the function is rarely executed. */
1658 /* Applies to: functions. */
1659 /* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
1660 <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
1661 Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */
1662 #if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
1664 # define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
1666 # define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
1669 # define _GL_ATTRIBUTE_COLD
1672 /* _GL_ATTRIBUTE_CONST declares that it is OK for a compiler to omit duplicate
1673 calls to the function with the same arguments.
1674 This attribute is safe for a function that neither depends on nor affects
1675 observable state, and always returns exactly once - e.g., does not loop
1676 forever, and does not call longjmp.
1677 (This attribute is stricter than _GL_ATTRIBUTE_PURE.) */
1678 /* Applies to: functions. */
1679 #if _GL_HAS_ATTRIBUTE (const)
1680 # define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
1682 # define _GL_ATTRIBUTE_CONST
1685 /* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers
1686 that can be freed by passing them as the Ith argument to the
1688 _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that
1689 can be freed via 'free'; it can be used only after declaring 'free'. */
1690 /* Applies to: functions. Cannot be used on inline functions. */
1691 #if _GL_GNUC_PREREQ (11, 0)
1692 # define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i)))
1694 # define _GL_ATTRIBUTE_DEALLOC(f, i)
1696 /* If gnulib's <string.h> or <wchar.h> has already defined this macro, continue
1697 to use this earlier definition, since <stdlib.h> may not have been included
1699 #ifndef _GL_ATTRIBUTE_DEALLOC_FREE
1700 # define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1)
1703 /* _GL_ATTRIBUTE_DEPRECATED: Declares that an entity is deprecated.
1704 The compiler may warn if the entity is used. */
1706 - function, variable,
1707 - struct, union, struct/union member,
1708 - enumeration, enumeration item,
1710 in C++ also: namespace, class, template specialization. */
1711 #if _GL_HAS_C_ATTRIBUTE (deprecated)
1712 # define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
1713 #elif _GL_HAS_ATTRIBUTE (deprecated)
1714 # define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
1716 # define _GL_ATTRIBUTE_DEPRECATED
1719 /* _GL_ATTRIBUTE_ERROR(msg) requests an error if a function is called and
1720 the function call is not optimized away.
1721 _GL_ATTRIBUTE_WARNING(msg) requests a warning if a function is called and
1722 the function call is not optimized away. */
1723 /* Applies to: functions. */
1724 #if _GL_HAS_ATTRIBUTE (error)
1725 # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
1726 # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
1727 #elif _GL_HAS_ATTRIBUTE (diagnose_if)
1728 # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
1729 # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
1731 # define _GL_ATTRIBUTE_ERROR(msg)
1732 # define _GL_ATTRIBUTE_WARNING(msg)
1735 /* _GL_ATTRIBUTE_EXTERNALLY_VISIBLE declares that the entity should remain
1736 visible to debuggers etc., even with '-fwhole-program'. */
1737 /* Applies to: functions, variables. */
1738 #if _GL_HAS_ATTRIBUTE (externally_visible)
1739 # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
1741 # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
1744 /* _GL_ATTRIBUTE_FALLTHROUGH declares that it is not a programming mistake if
1745 the control flow falls through to the immediately following 'case' or
1746 'default' label. The compiler should not warn in this case. */
1747 /* Applies to: Empty statement (;), inside a 'switch' statement. */
1748 /* Always expands to something. */
1749 #if _GL_HAS_C_ATTRIBUTE (fallthrough)
1750 # define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
1751 #elif _GL_HAS_ATTRIBUTE (fallthrough)
1752 # define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
1754 # define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
1757 /* _GL_ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK))
1758 declares that the STRING-INDEXth function argument is a format string of
1759 style ARCHETYPE, which is one of:
1762 strftime, gnu_strftime,
1764 or the same thing prefixed and suffixed with '__'.
1765 If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK
1766 are suitable for the format string. */
1767 /* Applies to: functions. */
1768 #if _GL_HAS_ATTRIBUTE (format)
1769 # define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
1771 # define _GL_ATTRIBUTE_FORMAT(spec)
1774 /* _GL_ATTRIBUTE_LEAF declares that if the function is called from some other
1775 compilation unit, it executes code from that unit only by return or by
1776 exception handling. This declaration lets the compiler optimize that unit
1777 more aggressively. */
1778 /* Applies to: functions. */
1779 #if _GL_HAS_ATTRIBUTE (leaf)
1780 # define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
1782 # define _GL_ATTRIBUTE_LEAF
1785 /* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly
1786 allocated memory. */
1787 /* Applies to: functions. */
1788 #if _GL_HAS_ATTRIBUTE (malloc)
1789 # define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
1791 # define _GL_ATTRIBUTE_MALLOC
1794 /* _GL_ATTRIBUTE_MAY_ALIAS declares that pointers to the type may point to the
1795 same storage as pointers to other types. Thus this declaration disables
1796 strict aliasing optimization. */
1797 /* Applies to: types. */
1798 /* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */
1799 #if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
1800 # define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
1802 # define _GL_ATTRIBUTE_MAY_ALIAS
1805 /* _GL_ATTRIBUTE_MAYBE_UNUSED declares that it is not a programming mistake if
1806 the entity is not used. The compiler should not warn if the entity is not
1809 - function, variable,
1810 - struct, union, struct/union member,
1811 - enumeration, enumeration item,
1813 in C++ also: class. */
1814 /* In C++ and C2x, this is spelled [[__maybe_unused__]].
1815 GCC's syntax is __attribute__ ((__unused__)).
1816 clang supports both syntaxes. */
1817 #if _GL_HAS_C_ATTRIBUTE (maybe_unused)
1818 # define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
1820 # define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED
1822 /* Alternative spelling of this macro, for convenience. */
1823 #define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
1824 /* Earlier spellings of this macro. */
1825 #define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
1827 /* _GL_ATTRIBUTE_NODISCARD declares that the caller of the function should not
1828 discard the return value. The compiler may warn if the caller does not use
1829 the return value, unless the caller uses something like ignore_value. */
1830 /* Applies to: function, enumeration, class. */
1831 #if _GL_HAS_C_ATTRIBUTE (nodiscard)
1832 # define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
1833 #elif _GL_HAS_ATTRIBUTE (warn_unused_result)
1834 # define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
1836 # define _GL_ATTRIBUTE_NODISCARD
1839 /* _GL_ATTRIBUTE_NOINLINE tells that the compiler should not inline the
1841 /* Applies to: functions. */
1842 #if _GL_HAS_ATTRIBUTE (noinline)
1843 # define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
1845 # define _GL_ATTRIBUTE_NOINLINE
1848 /* _GL_ATTRIBUTE_NONNULL ((N1, N2,...)) declares that the arguments N1, N2,...
1850 _GL_ATTRIBUTE_NONNULL () declares that all pointer arguments must not be
1852 /* Applies to: functions. */
1853 #if _GL_HAS_ATTRIBUTE (nonnull)
1854 # define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
1856 # define _GL_ATTRIBUTE_NONNULL(args)
1859 /* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is
1860 not meant to be NUL-terminated. */
1861 /* Applies to: struct/union members and variables that are arrays of element
1862 type '[[un]signed] char'. */
1863 #if _GL_HAS_ATTRIBUTE (nonstring)
1864 # define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
1866 # define _GL_ATTRIBUTE_NONSTRING
1869 /* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */
1871 /* _GL_ATTRIBUTE_NOTHROW declares that the function does not throw exceptions.
1873 /* Applies to: functions. */
1874 #if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
1875 # define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
1877 # define _GL_ATTRIBUTE_NOTHROW
1880 /* _GL_ATTRIBUTE_PACKED declares:
1881 For struct members: The member has the smallest possible alignment.
1882 For struct, union, class: All members have the smallest possible alignment,
1883 minimizing the memory required. */
1884 /* Applies to: struct members, struct, union,
1885 in C++ also: class. */
1886 #if _GL_HAS_ATTRIBUTE (packed)
1887 # define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
1889 # define _GL_ATTRIBUTE_PACKED
1892 /* _GL_ATTRIBUTE_PURE declares that It is OK for a compiler to omit duplicate
1893 calls to the function with the same arguments if observable state is not
1894 changed between calls.
1895 This attribute is safe for a function that does not affect
1896 observable state, and always returns exactly once.
1897 (This attribute is looser than _GL_ATTRIBUTE_CONST.) */
1898 /* Applies to: functions. */
1899 #if _GL_HAS_ATTRIBUTE (pure)
1900 # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
1902 # define _GL_ATTRIBUTE_PURE
1905 /* _GL_ATTRIBUTE_RETURNS_NONNULL declares that the function's return value is
1906 a non-NULL pointer. */
1907 /* Applies to: functions. */
1908 #if _GL_HAS_ATTRIBUTE (returns_nonnull)
1909 # define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
1911 # define _GL_ATTRIBUTE_RETURNS_NONNULL
1914 /* _GL_ATTRIBUTE_SENTINEL(pos) declares that the variadic function expects a
1915 trailing NULL argument.
1916 _GL_ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99).
1917 _GL_ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL. */
1918 /* Applies to: functions. */
1919 #if _GL_HAS_ATTRIBUTE (sentinel)
1920 # define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
1922 # define _GL_ATTRIBUTE_SENTINEL(pos)
1925 /* A helper macro. Don't use it directly. */
1926 #if _GL_HAS_ATTRIBUTE (unused)
1927 # define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
1929 # define _GL_ATTRIBUTE_UNUSED
1933 /* _GL_UNUSED_LABEL; declares that it is not a programming mistake if the
1934 immediately preceding label is not used. The compiler should not warn
1935 if the label is not used. */
1936 /* Applies to: label (both in C and C++). */
1937 /* Note that g++ < 4.5 does not support the '__attribute__ ((__unused__)) ;'
1938 syntax. But clang does. */
1939 #if !(defined __cplusplus && !_GL_GNUC_PREREQ (4, 5)) || defined __clang__
1940 # define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED
1942 # define _GL_UNUSED_LABEL
1946 /* Define to `int' if <sys/types.h> doesn't define. */
1949 /* Define to `__inline__' or `__inline' if that's what the C compiler
1950 calls it, or to nothing if 'inline' is not supported under any name. */
1955 /* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
1956 the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
1957 earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
1958 __APPLE__ && __MACH__ test for Mac OS X.
1959 __APPLE_CC__ tests for the Apple compiler and its version.
1960 __STDC_VERSION__ tests for the C99 mode. */
1961 #if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
1962 # define __GNUC_STDC_INLINE__ 1
1965 /* Define to a type if <wchar.h> does not define. */
1968 /* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
1969 n1 and n2 are expressions without side effects, that evaluate to real
1970 numbers (excluding NaN).
1975 The naïve code (n1 > n2 ? 1 : n1 < n2 ? -1 : 0) produces a conditional
1976 jump with nearly all GCC versions up to GCC 10.
1977 This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional with many
1978 GCC versions up to GCC 9.
1979 The better code (n1 > n2) - (n1 < n2) from Hacker's Delight § 2-9
1980 avoids conditional jumps in all GCC versions >= 3.4. */
1981 #define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
1984 /* Define to `int' if <sys/types.h> does not define. */
1987 /* Define to the type of st_nlink in struct stat, or a supertype. */
1990 /* Define as a signed integer type capable of holding a process identifier. */
1993 /* Define to the equivalent of the C99 'restrict' keyword, or to
1994 nothing if this is not supported. Do not define if restrict is
1995 supported only directly. */
1997 /* Work around a bug in older versions of Sun C++, which did not
1998 #define __restrict__ or support _Restrict or __restrict__
1999 even though the corresponding Sun C compiler ended up with
2000 "#define restrict _Restrict" or "#define restrict __restrict__"
2001 in the previous line. This workaround can be removed once
2002 we assume Oracle Developer Studio 12.5 (2016) or later. */
2003 #if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
2005 # define __restrict__
2008 /* Define to `unsigned int' if <sys/types.h> does not define. */
2011 /* type to use in place of socklen_t if not defined */
2014 /* Define as a signed type of the same size as size_t. */
2017 /* Define to `int' if <sys/types.h> doesn't define. */