xref: /netbsd-src/external/gpl3/gdb/lib/libgnulib/arch/hppa/gnulib/config.h (revision 800f65cfd08922525602506b0895f419b45e9f33)
14d342c04Schristos /* This file is automatically generated.  DO NOT EDIT! */
2d16b7486Schristos /* Generated from: NetBSD: mknative-gdb,v 1.16 2023/07/31 17:09:59 christos Exp  */
34d342c04Schristos /* Generated from: NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp  */
44d342c04Schristos 
54d342c04Schristos /* config.h.  Generated from config.in by configure.  */
64d342c04Schristos /* config.in.  Generated from configure.ac by autoheader.  */
74d342c04Schristos 
84d342c04Schristos /* Define if building universal (internal helper macro) */
94d342c04Schristos /* #undef AC_APPLE_UNIVERSAL_BUILD */
104d342c04Schristos 
114d342c04Schristos /* Define to the number of bits in type 'ptrdiff_t'. */
124d342c04Schristos #define BITSIZEOF_PTRDIFF_T 32
134d342c04Schristos 
144d342c04Schristos /* Define to the number of bits in type 'sig_atomic_t'. */
154d342c04Schristos #define BITSIZEOF_SIG_ATOMIC_T 32
164d342c04Schristos 
174d342c04Schristos /* Define to the number of bits in type 'size_t'. */
184d342c04Schristos #define BITSIZEOF_SIZE_T 32
194d342c04Schristos 
204d342c04Schristos /* Define to the number of bits in type 'wchar_t'. */
214d342c04Schristos #define BITSIZEOF_WCHAR_T 32
224d342c04Schristos 
234d342c04Schristos /* Define to the number of bits in type 'wint_t'. */
244d342c04Schristos #define BITSIZEOF_WINT_T 32
254d342c04Schristos 
26d16b7486Schristos /* Define to 1 if chown fails to change ctime when at least one argument was
27d16b7486Schristos    not -1. */
28d16b7486Schristos #define CHOWN_CHANGE_TIME_BUG 1
294d342c04Schristos 
30d16b7486Schristos /* Define if chown is not POSIX compliant regarding IDs of -1. */
31d16b7486Schristos #define CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE 1
32d16b7486Schristos 
33d16b7486Schristos /* Define if chown modifies symlinks. */
34d16b7486Schristos /* #undef CHOWN_MODIFIES_SYMLINK */
35d16b7486Schristos 
36d16b7486Schristos /* Define to 1 if chown mishandles trailing slash. */
37d16b7486Schristos #define CHOWN_TRAILING_SLASH_BUG 1
38d16b7486Schristos 
39d16b7486Schristos /* Define to 1 if using 'alloca.c'. */
404d342c04Schristos /* #undef C_ALLOCA */
414d342c04Schristos 
424d342c04Schristos /* Define as the bit index in the word where to find bit 0 of the exponent of
434d342c04Schristos    'double'. */
444d342c04Schristos #define DBL_EXPBIT0_BIT 20
454d342c04Schristos 
464d342c04Schristos /* Define as the word index where to find the exponent of 'double'. */
474d342c04Schristos #define DBL_EXPBIT0_WORD 0
484d342c04Schristos 
494d342c04Schristos /* the name of the file descriptor member of DIR */
504d342c04Schristos /* #undef DIR_FD_MEMBER_NAME */
514d342c04Schristos 
524d342c04Schristos #ifdef DIR_FD_MEMBER_NAME
534d342c04Schristos # define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME)
544d342c04Schristos #else
554d342c04Schristos # define DIR_TO_FD(Dir_p) -1
564d342c04Schristos #endif
574d342c04Schristos 
584d342c04Schristos 
594d342c04Schristos /* Define to 1 if // is a file system root distinct from /. */
604d342c04Schristos /* #undef DOUBLE_SLASH_IS_DISTINCT_ROOT */
614d342c04Schristos 
624d342c04Schristos /* Define if struct dirent has a member d_ino that actually works. */
634d342c04Schristos /* #undef D_INO_IN_DIRENT */
644d342c04Schristos 
654d342c04Schristos /* Define this to 1 if F_DUPFD behavior does not match POSIX */
664d342c04Schristos /* #undef FCNTL_DUPFD_BUGGY */
674d342c04Schristos 
684d342c04Schristos /* Define to nothing if C supports flexible array members, and to 1 if it does
694d342c04Schristos    not. That way, with a declaration like 'struct s { int n; short
704d342c04Schristos    d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99
714d342c04Schristos    compilers. Use 'FLEXSIZEOF (struct s, d, N * sizeof (short))' to calculate
724d342c04Schristos    the size in bytes of such a struct containing an N-element array. */
734d342c04Schristos #define FLEXIBLE_ARRAY_MEMBER /**/
744d342c04Schristos 
754d342c04Schristos /* Define to 1 if mkdir mistakenly creates a directory given with a trailing
764d342c04Schristos    dot component. */
77d16b7486Schristos #define FUNC_MKDIR_DOT_BUG 1
784d342c04Schristos 
794d342c04Schristos /* Define to 1 if realpath() can malloc memory, always gives an absolute path,
80d16b7486Schristos    and handles a trailing slash correctly. */
81d16b7486Schristos /* #undef FUNC_REALPATH_NEARLY_WORKS */
824d342c04Schristos 
83d16b7486Schristos /* Define to 1 if realpath() can malloc memory, always gives an absolute path,
84d16b7486Schristos    and handles leading slashes and a trailing slash correctly. */
85d16b7486Schristos /* #undef FUNC_REALPATH_WORKS */
864d342c04Schristos 
874d342c04Schristos /* Define this to 'void' or 'struct timezone' to match the system's
884d342c04Schristos    declaration of the second argument to gettimeofday. */
894d342c04Schristos #define GETTIMEOFDAY_TIMEZONE void
904d342c04Schristos 
914d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
924d342c04Schristos    whether the gnulib module canonicalize-lgpl shall be considered present. */
934d342c04Schristos #define GNULIB_CANONICALIZE_LGPL 1
944d342c04Schristos 
954d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
964d342c04Schristos    whether the gnulib module fdopendir shall be considered present. */
974d342c04Schristos #define GNULIB_FDOPENDIR 1
984d342c04Schristos 
994d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1004d342c04Schristos    whether the gnulib module fd-safer-flag shall be considered present. */
1014d342c04Schristos #define GNULIB_FD_SAFER_FLAG 1
1024d342c04Schristos 
1034d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1044d342c04Schristos    whether the gnulib module fnmatch-gnu shall be considered present. */
1054d342c04Schristos #define GNULIB_FNMATCH_GNU 1
1064d342c04Schristos 
1074d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1084d342c04Schristos    whether the gnulib module fscanf shall be considered present. */
1094d342c04Schristos #define GNULIB_FSCANF 1
1104d342c04Schristos 
1114d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1124d342c04Schristos    whether the gnulib module getcwd shall be considered present. */
1134d342c04Schristos #define GNULIB_GETCWD 1
1144d342c04Schristos 
1154d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1164d342c04Schristos    whether the gnulib module isblank shall be considered present. */
1174d342c04Schristos #define GNULIB_ISBLANK 1
1184d342c04Schristos 
1194d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1204d342c04Schristos    whether the gnulib module lock shall be considered present. */
1214d342c04Schristos #define GNULIB_LOCK 1
1224d342c04Schristos 
1234d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1244d342c04Schristos    whether the gnulib module mkostemp shall be considered present. */
1254d342c04Schristos #define GNULIB_MKOSTEMP 1
1264d342c04Schristos 
1274d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1284d342c04Schristos    whether the gnulib module msvc-nothrow shall be considered present. */
1294d342c04Schristos #define GNULIB_MSVC_NOTHROW 1
1304d342c04Schristos 
1314d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1324d342c04Schristos    whether the gnulib module openat shall be considered present. */
1334d342c04Schristos #define GNULIB_OPENAT 1
1344d342c04Schristos 
1354d342c04Schristos /* Define to 1 if printf and friends should be labeled with attribute
1364d342c04Schristos    "__gnu_printf__" instead of "__printf__" */
1374d342c04Schristos /* #undef GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU */
1384d342c04Schristos 
1394d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1404d342c04Schristos    whether the gnulib module scanf shall be considered present. */
1414d342c04Schristos #define GNULIB_SCANF 1
1424d342c04Schristos 
1434d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1444d342c04Schristos    whether the gnulib module strerror shall be considered present. */
1454d342c04Schristos #define GNULIB_STRERROR 1
1464d342c04Schristos 
1474d342c04Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
1484d342c04Schristos    whether the gnulib module strerror_r-posix shall be considered present. */
1494d342c04Schristos #define GNULIB_STRERROR_R_POSIX 1
1504d342c04Schristos 
151d16b7486Schristos /* Define to a C preprocessor expression that evaluates to 1 or 0, depending
152d16b7486Schristos    whether the gnulib module tempname shall be considered present. */
153d16b7486Schristos #define GNULIB_TEMPNAME 1
154d16b7486Schristos 
155d16b7486Schristos /* Define to 1 when the gnulib module accept should be tested. */
156d16b7486Schristos #define GNULIB_TEST_ACCEPT 1
157d16b7486Schristos 
158d16b7486Schristos /* Define to 1 when the gnulib module bind should be tested. */
159d16b7486Schristos #define GNULIB_TEST_BIND 1
160d16b7486Schristos 
1614d342c04Schristos /* Define to 1 when the gnulib module btowc should be tested. */
1624d342c04Schristos #define GNULIB_TEST_BTOWC 1
1634d342c04Schristos 
1644d342c04Schristos /* Define to 1 when the gnulib module canonicalize_file_name should be tested.
1654d342c04Schristos    */
1664d342c04Schristos #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1
1674d342c04Schristos 
1684d342c04Schristos /* Define to 1 when the gnulib module chdir should be tested. */
1694d342c04Schristos #define GNULIB_TEST_CHDIR 1
1704d342c04Schristos 
171d16b7486Schristos /* Define to 1 when the gnulib module chown should be tested. */
172d16b7486Schristos #define GNULIB_TEST_CHOWN 1
173d16b7486Schristos 
1744d342c04Schristos /* Define to 1 when the gnulib module cloexec should be tested. */
1754d342c04Schristos #define GNULIB_TEST_CLOEXEC 1
1764d342c04Schristos 
1774d342c04Schristos /* Define to 1 when the gnulib module close should be tested. */
1784d342c04Schristos #define GNULIB_TEST_CLOSE 1
1794d342c04Schristos 
1804d342c04Schristos /* Define to 1 when the gnulib module closedir should be tested. */
1814d342c04Schristos #define GNULIB_TEST_CLOSEDIR 1
1824d342c04Schristos 
183d16b7486Schristos /* Define to 1 when the gnulib module connect should be tested. */
184d16b7486Schristos #define GNULIB_TEST_CONNECT 1
185d16b7486Schristos 
1864d342c04Schristos /* Define to 1 when the gnulib module dirfd should be tested. */
1874d342c04Schristos #define GNULIB_TEST_DIRFD 1
1884d342c04Schristos 
1894d342c04Schristos /* Define to 1 when the gnulib module dup should be tested. */
1904d342c04Schristos #define GNULIB_TEST_DUP 1
1914d342c04Schristos 
1924d342c04Schristos /* Define to 1 when the gnulib module dup2 should be tested. */
1934d342c04Schristos #define GNULIB_TEST_DUP2 1
1944d342c04Schristos 
1954d342c04Schristos /* Define to 1 when the gnulib module environ should be tested. */
1964d342c04Schristos #define GNULIB_TEST_ENVIRON 1
1974d342c04Schristos 
1984d342c04Schristos /* Define to 1 when the gnulib module fchdir should be tested. */
1994d342c04Schristos #define GNULIB_TEST_FCHDIR 1
2004d342c04Schristos 
2014d342c04Schristos /* Define to 1 when the gnulib module fcntl should be tested. */
2024d342c04Schristos #define GNULIB_TEST_FCNTL 1
2034d342c04Schristos 
2044d342c04Schristos /* Define to 1 when the gnulib module fdopendir should be tested. */
2054d342c04Schristos #define GNULIB_TEST_FDOPENDIR 1
2064d342c04Schristos 
207d16b7486Schristos /* Define to 1 when the gnulib module fgetc should be tested. */
208d16b7486Schristos #define GNULIB_TEST_FGETC 1
209d16b7486Schristos 
210d16b7486Schristos /* Define to 1 when the gnulib module fgets should be tested. */
211d16b7486Schristos #define GNULIB_TEST_FGETS 1
212d16b7486Schristos 
2134d342c04Schristos /* Define to 1 when the gnulib module fnmatch should be tested. */
2144d342c04Schristos #define GNULIB_TEST_FNMATCH 1
2154d342c04Schristos 
216d16b7486Schristos /* Define to 1 when the gnulib module fprintf should be tested. */
217d16b7486Schristos #define GNULIB_TEST_FPRINTF 1
218d16b7486Schristos 
219d16b7486Schristos /* Define to 1 when the gnulib module fputc should be tested. */
220d16b7486Schristos #define GNULIB_TEST_FPUTC 1
221d16b7486Schristos 
222d16b7486Schristos /* Define to 1 when the gnulib module fputs should be tested. */
223d16b7486Schristos #define GNULIB_TEST_FPUTS 1
224d16b7486Schristos 
225d16b7486Schristos /* Define to 1 when the gnulib module fread should be tested. */
226d16b7486Schristos #define GNULIB_TEST_FREAD 1
227d16b7486Schristos 
228d16b7486Schristos /* Define to 1 when the gnulib module free-posix should be tested. */
229d16b7486Schristos #define GNULIB_TEST_FREE_POSIX 1
230d16b7486Schristos 
2314d342c04Schristos /* Define to 1 when the gnulib module frexp should be tested. */
2324d342c04Schristos #define GNULIB_TEST_FREXP 1
2334d342c04Schristos 
2344d342c04Schristos /* Define to 1 when the gnulib module frexpl should be tested. */
2354d342c04Schristos #define GNULIB_TEST_FREXPL 1
2364d342c04Schristos 
237d16b7486Schristos /* Define to 1 when the gnulib module fscanf should be tested. */
238d16b7486Schristos #define GNULIB_TEST_FSCANF 1
239d16b7486Schristos 
2404d342c04Schristos /* Define to 1 when the gnulib module fstat should be tested. */
2414d342c04Schristos #define GNULIB_TEST_FSTAT 1
2424d342c04Schristos 
2434d342c04Schristos /* Define to 1 when the gnulib module fstatat should be tested. */
2444d342c04Schristos #define GNULIB_TEST_FSTATAT 1
2454d342c04Schristos 
246d16b7486Schristos /* Define to 1 when the gnulib module fwrite should be tested. */
247d16b7486Schristos #define GNULIB_TEST_FWRITE 1
248d16b7486Schristos 
249d16b7486Schristos /* Define to 1 when the gnulib module getc should be tested. */
250d16b7486Schristos #define GNULIB_TEST_GETC 1
251d16b7486Schristos 
252d16b7486Schristos /* Define to 1 when the gnulib module getchar should be tested. */
253d16b7486Schristos #define GNULIB_TEST_GETCHAR 1
254d16b7486Schristos 
2554d342c04Schristos /* Define to 1 when the gnulib module getcwd should be tested. */
2564d342c04Schristos #define GNULIB_TEST_GETCWD 1
2574d342c04Schristos 
258d16b7486Schristos /* Define to 1 when the gnulib module getdelim should be tested. */
259d16b7486Schristos #define GNULIB_TEST_GETDELIM 1
260d16b7486Schristos 
2614d342c04Schristos /* Define to 1 when the gnulib module getdtablesize should be tested. */
2624d342c04Schristos #define GNULIB_TEST_GETDTABLESIZE 1
2634d342c04Schristos 
264d16b7486Schristos /* Define to 1 when the gnulib module getline should be tested. */
265d16b7486Schristos #define GNULIB_TEST_GETLINE 1
266d16b7486Schristos 
2674d342c04Schristos /* Define to 1 when the gnulib module getlogin_r should be tested. */
2684d342c04Schristos #define GNULIB_TEST_GETLOGIN_R 1
2694d342c04Schristos 
2704d342c04Schristos /* Define to 1 when the gnulib module getrandom should be tested. */
2714d342c04Schristos #define GNULIB_TEST_GETRANDOM 1
2724d342c04Schristos 
2734d342c04Schristos /* Define to 1 when the gnulib module gettimeofday should be tested. */
2744d342c04Schristos #define GNULIB_TEST_GETTIMEOFDAY 1
2754d342c04Schristos 
2764d342c04Schristos /* Define to 1 when the gnulib module glob should be tested. */
2774d342c04Schristos #define GNULIB_TEST_GLOB 1
2784d342c04Schristos 
279d16b7486Schristos /* Define to 1 when the gnulib module listen should be tested. */
280d16b7486Schristos #define GNULIB_TEST_LISTEN 1
281d16b7486Schristos 
2824d342c04Schristos /* Define to 1 when the gnulib module lstat should be tested. */
2834d342c04Schristos #define GNULIB_TEST_LSTAT 1
2844d342c04Schristos 
2854d342c04Schristos /* Define to 1 when the gnulib module malloc-posix should be tested. */
2864d342c04Schristos #define GNULIB_TEST_MALLOC_POSIX 1
2874d342c04Schristos 
2884d342c04Schristos /* Define to 1 when the gnulib module mbrtowc should be tested. */
2894d342c04Schristos #define GNULIB_TEST_MBRTOWC 1
2904d342c04Schristos 
2914d342c04Schristos /* Define to 1 when the gnulib module mbsinit should be tested. */
2924d342c04Schristos #define GNULIB_TEST_MBSINIT 1
2934d342c04Schristos 
2944d342c04Schristos /* Define to 1 when the gnulib module mbsrtowcs should be tested. */
2954d342c04Schristos #define GNULIB_TEST_MBSRTOWCS 1
2964d342c04Schristos 
2974d342c04Schristos /* Define to 1 when the gnulib module mbtowc should be tested. */
2984d342c04Schristos #define GNULIB_TEST_MBTOWC 1
2994d342c04Schristos 
3004d342c04Schristos /* Define to 1 when the gnulib module memchr should be tested. */
3014d342c04Schristos #define GNULIB_TEST_MEMCHR 1
3024d342c04Schristos 
3034d342c04Schristos /* Define to 1 when the gnulib module memmem should be tested. */
3044d342c04Schristos #define GNULIB_TEST_MEMMEM 1
3054d342c04Schristos 
3064d342c04Schristos /* Define to 1 when the gnulib module mempcpy should be tested. */
3074d342c04Schristos #define GNULIB_TEST_MEMPCPY 1
3084d342c04Schristos 
3094d342c04Schristos /* Define to 1 when the gnulib module memrchr should be tested. */
3104d342c04Schristos #define GNULIB_TEST_MEMRCHR 1
3114d342c04Schristos 
312d16b7486Schristos /* Define to 1 when the gnulib module mkdir should be tested. */
313d16b7486Schristos #define GNULIB_TEST_MKDIR 1
314d16b7486Schristos 
3154d342c04Schristos /* Define to 1 when the gnulib module mkdtemp should be tested. */
3164d342c04Schristos #define GNULIB_TEST_MKDTEMP 1
3174d342c04Schristos 
3184d342c04Schristos /* Define to 1 when the gnulib module mkostemp should be tested. */
3194d342c04Schristos #define GNULIB_TEST_MKOSTEMP 1
3204d342c04Schristos 
3214d342c04Schristos /* Define to 1 when the gnulib module open should be tested. */
3224d342c04Schristos #define GNULIB_TEST_OPEN 1
3234d342c04Schristos 
3244d342c04Schristos /* Define to 1 when the gnulib module openat should be tested. */
3254d342c04Schristos #define GNULIB_TEST_OPENAT 1
3264d342c04Schristos 
3274d342c04Schristos /* Define to 1 when the gnulib module opendir should be tested. */
3284d342c04Schristos #define GNULIB_TEST_OPENDIR 1
3294d342c04Schristos 
330d16b7486Schristos /* Define to 1 when the gnulib module pipe should be tested. */
331d16b7486Schristos #define GNULIB_TEST_PIPE 1
332d16b7486Schristos 
333d16b7486Schristos /* Define to 1 when the gnulib module printf should be tested. */
334d16b7486Schristos #define GNULIB_TEST_PRINTF 1
335d16b7486Schristos 
336d16b7486Schristos /* Define to 1 when the gnulib module putc should be tested. */
337d16b7486Schristos #define GNULIB_TEST_PUTC 1
338d16b7486Schristos 
339d16b7486Schristos /* Define to 1 when the gnulib module putchar should be tested. */
340d16b7486Schristos #define GNULIB_TEST_PUTCHAR 1
341d16b7486Schristos 
342d16b7486Schristos /* Define to 1 when the gnulib module puts should be tested. */
343d16b7486Schristos #define GNULIB_TEST_PUTS 1
344d16b7486Schristos 
3454d342c04Schristos /* Define to 1 when the gnulib module rawmemchr should be tested. */
3464d342c04Schristos #define GNULIB_TEST_RAWMEMCHR 1
3474d342c04Schristos 
3484d342c04Schristos /* Define to 1 when the gnulib module readdir should be tested. */
3494d342c04Schristos #define GNULIB_TEST_READDIR 1
3504d342c04Schristos 
3514d342c04Schristos /* Define to 1 when the gnulib module readlink should be tested. */
3524d342c04Schristos #define GNULIB_TEST_READLINK 1
3534d342c04Schristos 
3544d342c04Schristos /* Define to 1 when the gnulib module realloc-posix should be tested. */
3554d342c04Schristos #define GNULIB_TEST_REALLOC_POSIX 1
3564d342c04Schristos 
3574d342c04Schristos /* Define to 1 when the gnulib module realpath should be tested. */
3584d342c04Schristos #define GNULIB_TEST_REALPATH 1
3594d342c04Schristos 
3604d342c04Schristos /* Define to 1 when the gnulib module rename should be tested. */
3614d342c04Schristos #define GNULIB_TEST_RENAME 1
3624d342c04Schristos 
3634d342c04Schristos /* Define to 1 when the gnulib module rewinddir should be tested. */
3644d342c04Schristos #define GNULIB_TEST_REWINDDIR 1
3654d342c04Schristos 
3664d342c04Schristos /* Define to 1 when the gnulib module rmdir should be tested. */
3674d342c04Schristos #define GNULIB_TEST_RMDIR 1
3684d342c04Schristos 
369d16b7486Schristos /* Define to 1 when the gnulib module scanf should be tested. */
370d16b7486Schristos #define GNULIB_TEST_SCANF 1
371d16b7486Schristos 
372d16b7486Schristos /* Define to 1 when the gnulib module select should be tested. */
373d16b7486Schristos #define GNULIB_TEST_SELECT 1
374d16b7486Schristos 
3754d342c04Schristos /* Define to 1 when the gnulib module setenv should be tested. */
3764d342c04Schristos #define GNULIB_TEST_SETENV 1
3774d342c04Schristos 
3784d342c04Schristos /* Define to 1 when the gnulib module setlocale_null should be tested. */
3794d342c04Schristos #define GNULIB_TEST_SETLOCALE_NULL 1
3804d342c04Schristos 
381d16b7486Schristos /* Define to 1 when the gnulib module setsockopt should be tested. */
382d16b7486Schristos #define GNULIB_TEST_SETSOCKOPT 1
383d16b7486Schristos 
384d16b7486Schristos /* Define to 1 when the gnulib module socket should be tested. */
385d16b7486Schristos #define GNULIB_TEST_SOCKET 1
386d16b7486Schristos 
3874d342c04Schristos /* Define to 1 when the gnulib module stat should be tested. */
3884d342c04Schristos #define GNULIB_TEST_STAT 1
3894d342c04Schristos 
3904d342c04Schristos /* Define to 1 when the gnulib module strchrnul should be tested. */
3914d342c04Schristos #define GNULIB_TEST_STRCHRNUL 1
3924d342c04Schristos 
3934d342c04Schristos /* Define to 1 when the gnulib module strdup should be tested. */
3944d342c04Schristos #define GNULIB_TEST_STRDUP 1
3954d342c04Schristos 
3964d342c04Schristos /* Define to 1 when the gnulib module strerror should be tested. */
3974d342c04Schristos #define GNULIB_TEST_STRERROR 1
3984d342c04Schristos 
3994d342c04Schristos /* Define to 1 when the gnulib module strerror_r should be tested. */
4004d342c04Schristos #define GNULIB_TEST_STRERROR_R 1
4014d342c04Schristos 
4024d342c04Schristos /* Define to 1 when the gnulib module strnlen should be tested. */
4034d342c04Schristos #define GNULIB_TEST_STRNLEN 1
4044d342c04Schristos 
4054d342c04Schristos /* Define to 1 when the gnulib module strstr should be tested. */
4064d342c04Schristos #define GNULIB_TEST_STRSTR 1
4074d342c04Schristos 
4084d342c04Schristos /* Define to 1 when the gnulib module strtok_r should be tested. */
4094d342c04Schristos #define GNULIB_TEST_STRTOK_R 1
4104d342c04Schristos 
4114d342c04Schristos /* Define to 1 when the gnulib module time_r should be tested. */
4124d342c04Schristos #define GNULIB_TEST_TIME_R 1
4134d342c04Schristos 
4144d342c04Schristos /* Define to 1 when the gnulib module unsetenv should be tested. */
4154d342c04Schristos #define GNULIB_TEST_UNSETENV 1
4164d342c04Schristos 
417d16b7486Schristos /* Define to 1 when the gnulib module vfprintf should be tested. */
418d16b7486Schristos #define GNULIB_TEST_VFPRINTF 1
419d16b7486Schristos 
420d16b7486Schristos /* Define to 1 when the gnulib module vprintf should be tested. */
421d16b7486Schristos #define GNULIB_TEST_VPRINTF 1
422d16b7486Schristos 
4234d342c04Schristos /* Define to 1 when the gnulib module wmemchr should be tested. */
4244d342c04Schristos #define GNULIB_TEST_WMEMCHR 1
4254d342c04Schristos 
4264d342c04Schristos /* Define to 1 when the gnulib module wmempcpy should be tested. */
4274d342c04Schristos #define GNULIB_TEST_WMEMPCPY 1
4284d342c04Schristos 
4294d342c04Schristos /* Define to 1 if you have 'alloca' after including <alloca.h>, a header that
4304d342c04Schristos    may be supplied by this distribution. */
4314d342c04Schristos #define HAVE_ALLOCA 1
4324d342c04Schristos 
4334d342c04Schristos /* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
4344d342c04Schristos    */
4354d342c04Schristos /* #undef HAVE_ALLOCA_H */
4364d342c04Schristos 
4374d342c04Schristos /* Define to 1 if you have the <arpa/inet.h> header file. */
4384d342c04Schristos #define HAVE_ARPA_INET_H 1
4394d342c04Schristos 
4404d342c04Schristos /* Define to 1 if you have the <bcrypt.h> header file. */
4414d342c04Schristos /* #undef HAVE_BCRYPT_H */
4424d342c04Schristos 
4434d342c04Schristos /* Define to 1 if you have the <bp-sym.h> header file. */
4444d342c04Schristos /* #undef HAVE_BP_SYM_H */
4454d342c04Schristos 
4464d342c04Schristos /* Define to 1 if you have the `btowc' function. */
4474d342c04Schristos #define HAVE_BTOWC 1
4484d342c04Schristos 
4494d342c04Schristos /* Define to 1 if you have the `canonicalize_file_name' function. */
4504d342c04Schristos /* #undef HAVE_CANONICALIZE_FILE_NAME */
4514d342c04Schristos 
4524d342c04Schristos /* Define to 1 if you have the `catgets' function. */
4534d342c04Schristos #define HAVE_CATGETS 1
4544d342c04Schristos 
455d16b7486Schristos /* Define to 1 if you have the `chown' function. */
456d16b7486Schristos #define HAVE_CHOWN 1
457d16b7486Schristos 
458d16b7486Schristos /* Define to 1 if you have the `clock_getres' function. */
459d16b7486Schristos #define HAVE_CLOCK_GETRES 1
460d16b7486Schristos 
461d16b7486Schristos /* Define to 1 if you have the `clock_gettime' function. */
462d16b7486Schristos #define HAVE_CLOCK_GETTIME 1
463d16b7486Schristos 
464d16b7486Schristos /* Define to 1 if you have the `clock_settime' function. */
465d16b7486Schristos #define HAVE_CLOCK_SETTIME 1
466d16b7486Schristos 
4674d342c04Schristos /* Define to 1 if you have the `closedir' function. */
4684d342c04Schristos #define HAVE_CLOSEDIR 1
4694d342c04Schristos 
4704d342c04Schristos /* Define to 1 if you have the <crtdefs.h> header file. */
4714d342c04Schristos /* #undef HAVE_CRTDEFS_H */
4724d342c04Schristos 
473d16b7486Schristos /* Define to 1 if C supports variable-length arrays. */
474d16b7486Schristos #define HAVE_C_VARARRAYS 1
475d16b7486Schristos 
4764d342c04Schristos /* Define to 1 if you have the declaration of `alarm', and to 0 if you don't.
4774d342c04Schristos    */
4784d342c04Schristos #define HAVE_DECL_ALARM 1
4794d342c04Schristos 
4804d342c04Schristos /* Define to 1 if you have the declaration of `dirfd', and to 0 if you don't.
4814d342c04Schristos    */
4824d342c04Schristos #define HAVE_DECL_DIRFD 1
4834d342c04Schristos 
484d16b7486Schristos /* Define to 1 if you have the declaration of `ecvt', and to 0 if you don't.
485d16b7486Schristos    */
486d16b7486Schristos #define HAVE_DECL_ECVT 0
487d16b7486Schristos 
488d16b7486Schristos /* Define to 1 if you have the declaration of `execvpe', and to 0 if you
489d16b7486Schristos    don't. */
490d16b7486Schristos #define HAVE_DECL_EXECVPE 1
491d16b7486Schristos 
4924d342c04Schristos /* Define to 1 if you have the declaration of `fchdir', and to 0 if you don't.
4934d342c04Schristos    */
4944d342c04Schristos #define HAVE_DECL_FCHDIR 1
4954d342c04Schristos 
496d16b7486Schristos /* Define to 1 if you have the declaration of `fcloseall', and to 0 if you
497d16b7486Schristos    don't. */
498d16b7486Schristos #define HAVE_DECL_FCLOSEALL 0
499d16b7486Schristos 
500d16b7486Schristos /* Define to 1 if you have the declaration of `fcvt', and to 0 if you don't.
501d16b7486Schristos    */
502d16b7486Schristos #define HAVE_DECL_FCVT 0
503d16b7486Schristos 
5044d342c04Schristos /* Define to 1 if you have the declaration of `fdopendir', and to 0 if you
5054d342c04Schristos    don't. */
5064d342c04Schristos #define HAVE_DECL_FDOPENDIR 1
5074d342c04Schristos 
508d16b7486Schristos /* Define to 1 if you have the declaration of `gcvt', and to 0 if you don't.
509d16b7486Schristos    */
510d16b7486Schristos #define HAVE_DECL_GCVT 0
511d16b7486Schristos 
5124d342c04Schristos /* Define to 1 if you have the declaration of `getcwd', and to 0 if you don't.
5134d342c04Schristos    */
5144d342c04Schristos #define HAVE_DECL_GETCWD 1
5154d342c04Schristos 
516d16b7486Schristos /* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
517d16b7486Schristos    don't. */
518d16b7486Schristos #define HAVE_DECL_GETC_UNLOCKED 1
519d16b7486Schristos 
520d16b7486Schristos /* Define to 1 if you have the declaration of `getdelim', and to 0 if you
521d16b7486Schristos    don't. */
522d16b7486Schristos #define HAVE_DECL_GETDELIM 1
523d16b7486Schristos 
5244d342c04Schristos /* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you
5254d342c04Schristos    don't. */
5264d342c04Schristos #define HAVE_DECL_GETDTABLESIZE 1
5274d342c04Schristos 
528d16b7486Schristos /* Define to 1 if you have the declaration of `getline', and to 0 if you
529d16b7486Schristos    don't. */
530d16b7486Schristos #define HAVE_DECL_GETLINE 1
531d16b7486Schristos 
5324d342c04Schristos /* Define to 1 if you have the declaration of `getlogin', and to 0 if you
5334d342c04Schristos    don't. */
5344d342c04Schristos #define HAVE_DECL_GETLOGIN 1
5354d342c04Schristos 
5364d342c04Schristos /* Define to 1 if you have the declaration of `getlogin_r', and to 0 if you
5374d342c04Schristos    don't. */
5384d342c04Schristos #define HAVE_DECL_GETLOGIN_R 1
5394d342c04Schristos 
5404d342c04Schristos /* Define to 1 if you have the declaration of `inet_ntop', and to 0 if you
5414d342c04Schristos    don't. */
5424d342c04Schristos #define HAVE_DECL_INET_NTOP 1
5434d342c04Schristos 
5444d342c04Schristos /* Define to 1 if you have the declaration of `localtime_r', and to 0 if you
5454d342c04Schristos    don't. */
5464d342c04Schristos #define HAVE_DECL_LOCALTIME_R 1
5474d342c04Schristos 
5484d342c04Schristos /* Define to 1 if you have the declaration of `mbrtowc', and to 0 if you
5494d342c04Schristos    don't. */
5504d342c04Schristos /* #undef HAVE_DECL_MBRTOWC */
5514d342c04Schristos 
5524d342c04Schristos /* Define to 1 if you have the declaration of `mbsinit', and to 0 if you
5534d342c04Schristos    don't. */
5544d342c04Schristos /* #undef HAVE_DECL_MBSINIT */
5554d342c04Schristos 
5564d342c04Schristos /* Define to 1 if you have the declaration of `mbsrtowcs', and to 0 if you
5574d342c04Schristos    don't. */
5584d342c04Schristos /* #undef HAVE_DECL_MBSRTOWCS */
5594d342c04Schristos 
5604d342c04Schristos /* Define to 1 if you have the declaration of `memmem', and to 0 if you don't.
5614d342c04Schristos    */
5624d342c04Schristos #define HAVE_DECL_MEMMEM 1
5634d342c04Schristos 
5644d342c04Schristos /* Define to 1 if you have the declaration of `memrchr', and to 0 if you
5654d342c04Schristos    don't. */
5664d342c04Schristos #define HAVE_DECL_MEMRCHR 1
5674d342c04Schristos 
5684d342c04Schristos /* Define to 1 if you have the declaration of `program_invocation_name', and
5694d342c04Schristos    to 0 if you don't. */
5704d342c04Schristos #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0
5714d342c04Schristos 
5724d342c04Schristos /* Define to 1 if you have the declaration of `program_invocation_short_name',
5734d342c04Schristos    and to 0 if you don't. */
5744d342c04Schristos #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0
5754d342c04Schristos 
5764d342c04Schristos /* Define to 1 if you have the declaration of `setenv', and to 0 if you don't.
5774d342c04Schristos    */
5784d342c04Schristos #define HAVE_DECL_SETENV 1
5794d342c04Schristos 
5804d342c04Schristos /* Define to 1 if you have the declaration of `strdup', and to 0 if you don't.
5814d342c04Schristos    */
5824d342c04Schristos #define HAVE_DECL_STRDUP 1
5834d342c04Schristos 
5844d342c04Schristos /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
5854d342c04Schristos    don't. */
5864d342c04Schristos #define HAVE_DECL_STRERROR_R 1
5874d342c04Schristos 
5884d342c04Schristos /* Define to 1 if you have the declaration of `strnlen', and to 0 if you
5894d342c04Schristos    don't. */
5904d342c04Schristos #define HAVE_DECL_STRNLEN 1
5914d342c04Schristos 
5924d342c04Schristos /* Define to 1 if you have the declaration of `strtok_r', and to 0 if you
5934d342c04Schristos    don't. */
5944d342c04Schristos #define HAVE_DECL_STRTOK_R 1
5954d342c04Schristos 
5964d342c04Schristos /* Define to 1 if you have the declaration of `towlower', and to 0 if you
5974d342c04Schristos    don't. */
5984d342c04Schristos /* #undef HAVE_DECL_TOWLOWER */
5994d342c04Schristos 
6004d342c04Schristos /* Define to 1 if you have the declaration of `unsetenv', and to 0 if you
6014d342c04Schristos    don't. */
6024d342c04Schristos #define HAVE_DECL_UNSETENV 1
6034d342c04Schristos 
604d16b7486Schristos /* Define to 1 if you have the declaration of `wcsdup', and to 0 if you don't.
605d16b7486Schristos    */
606d16b7486Schristos #define HAVE_DECL_WCSDUP 1
607d16b7486Schristos 
6084d342c04Schristos /* Define to 1 if you have the declaration of `__argv', and to 0 if you don't.
6094d342c04Schristos    */
6104d342c04Schristos #define HAVE_DECL___ARGV 0
6114d342c04Schristos 
6124d342c04Schristos /* Define to 1 if you have the <dirent.h> header file. */
6134d342c04Schristos #define HAVE_DIRENT_H 1
6144d342c04Schristos 
6154d342c04Schristos /* Define to 1 if you have the `dirfd' function. */
6164d342c04Schristos /* #undef HAVE_DIRFD */
6174d342c04Schristos 
6184d342c04Schristos /* Define to 1 if you have the <dlfcn.h> header file. */
6194d342c04Schristos #define HAVE_DLFCN_H 1
6204d342c04Schristos 
6214d342c04Schristos /* Define if you have the declaration of environ. */
6224d342c04Schristos /* #undef HAVE_ENVIRON_DECL */
6234d342c04Schristos 
624d16b7486Schristos /* Define to 1 if you have the `faccessat' function. */
625d16b7486Schristos #define HAVE_FACCESSAT 1
626d16b7486Schristos 
6274d342c04Schristos /* Define to 1 if you have the `fchdir' function. */
6284d342c04Schristos #define HAVE_FCHDIR 1
6294d342c04Schristos 
630d16b7486Schristos /* Define to 1 if you have the `fchown' function. */
631d16b7486Schristos #define HAVE_FCHOWN 1
632d16b7486Schristos 
6334d342c04Schristos /* Define to 1 if you have the `fcntl' function. */
6344d342c04Schristos #define HAVE_FCNTL 1
6354d342c04Schristos 
6364d342c04Schristos /* Define to 1 if you have the `fdopendir' function. */
6374d342c04Schristos #define HAVE_FDOPENDIR 1
6384d342c04Schristos 
6394d342c04Schristos /* Define to 1 if you have the <features.h> header file. */
6404d342c04Schristos /* #undef HAVE_FEATURES_H */
6414d342c04Schristos 
642d16b7486Schristos /* Define to 1 if you have the `flockfile' function. */
643d16b7486Schristos #define HAVE_FLOCKFILE 1
644d16b7486Schristos 
6454d342c04Schristos /* Define to 1 if you have the `fnmatch' function. */
6464d342c04Schristos #define HAVE_FNMATCH 1
6474d342c04Schristos 
6484d342c04Schristos /* Define to 1 if you have the <fnmatch.h> header file. */
6494d342c04Schristos #define HAVE_FNMATCH_H 1
6504d342c04Schristos 
651d16b7486Schristos /* Define if the 'free' function is guaranteed to preserve errno. */
652d16b7486Schristos /* #undef HAVE_FREE_POSIX */
653d16b7486Schristos 
6544d342c04Schristos /* Define if the frexp() function is available and works. */
655d16b7486Schristos /* #undef HAVE_FREXP */
6564d342c04Schristos 
6574d342c04Schristos /* Define if the frexpl() function is available. */
6585900762bSrin #define HAVE_FREXPL 1
6594d342c04Schristos 
6604d342c04Schristos /* Define to 1 if you have the `fstatat' function. */
6614d342c04Schristos #define HAVE_FSTATAT 1
6624d342c04Schristos 
663d16b7486Schristos /* Define to 1 if you have the `funlockfile' function. */
664d16b7486Schristos #define HAVE_FUNLOCKFILE 1
665d16b7486Schristos 
6664d342c04Schristos /* Define to 1 if you have the `getcwd' function. */
6674d342c04Schristos #define HAVE_GETCWD 1
6684d342c04Schristos 
6694d342c04Schristos /* Define to 1 if getcwd works, but with shorter paths than is generally
6704d342c04Schristos    tested with the replacement. */
6714d342c04Schristos /* #undef HAVE_GETCWD_SHORTER */
6724d342c04Schristos 
673d16b7486Schristos /* Define to 1 if you have the `getdelim' function. */
674d16b7486Schristos #define HAVE_GETDELIM 1
675d16b7486Schristos 
6764d342c04Schristos /* Define to 1 if you have the `getdtablesize' function. */
6774d342c04Schristos #define HAVE_GETDTABLESIZE 1
6784d342c04Schristos 
6794d342c04Schristos /* Define to 1 if you have the `getexecname' function. */
6804d342c04Schristos /* #undef HAVE_GETEXECNAME */
6814d342c04Schristos 
6824d342c04Schristos /* Define to 1 if you have the `getlogin_r' function. */
6834d342c04Schristos #define HAVE_GETLOGIN_R 1
6844d342c04Schristos 
6854d342c04Schristos /* Define to 1 if the system has the 'getpagesize' function. */
6864d342c04Schristos /* #undef HAVE_GETPAGESIZE */
6874d342c04Schristos 
6884d342c04Schristos /* Define to 1 if you have the `getprogname' function. */
6894d342c04Schristos #define HAVE_GETPROGNAME 1
6904d342c04Schristos 
6914d342c04Schristos /* Define to 1 if you have the `getpwnam_r' function. */
6924d342c04Schristos #define HAVE_GETPWNAM_R 1
6934d342c04Schristos 
6944d342c04Schristos /* Define to 1 if you have the `getrandom' function. */
6955900762bSrin #define HAVE_GETRANDOM 1
6964d342c04Schristos 
6974d342c04Schristos /* Define to 1 if you have the `gettimeofday' function. */
6984d342c04Schristos #define HAVE_GETTIMEOFDAY 1
6994d342c04Schristos 
7004d342c04Schristos /* Define to 1 if you have the `glob' function. */
7014d342c04Schristos #define HAVE_GLOB 1
7024d342c04Schristos 
7034d342c04Schristos /* Define to 1 if you have the <glob.h> header file. */
7044d342c04Schristos #define HAVE_GLOB_H 1
7054d342c04Schristos 
7064d342c04Schristos /* Define to 1 if you have the `glob_pattern_p' function. */
7074d342c04Schristos #define HAVE_GLOB_PATTERN_P 1
7084d342c04Schristos 
7094d342c04Schristos /* Define to 1 if you have the `inet_ntop' function. */
7104d342c04Schristos /* #undef HAVE_INET_NTOP */
7114d342c04Schristos 
7124d342c04Schristos /* Define to 1 if you have the <inttypes.h> header file. */
7134d342c04Schristos #define HAVE_INTTYPES_H 1
7144d342c04Schristos 
7154d342c04Schristos /* Define to 1 if <sys/socket.h> defines AF_INET. */
7164d342c04Schristos #define HAVE_IPV4 1
7174d342c04Schristos 
7184d342c04Schristos /* Define to 1 if <sys/socket.h> defines AF_INET6. */
7194d342c04Schristos #define HAVE_IPV6 1
7204d342c04Schristos 
7214d342c04Schristos /* Define to 1 if you have the `isblank' function. */
7224d342c04Schristos #define HAVE_ISBLANK 1
7234d342c04Schristos 
7244d342c04Schristos /* Define if the isnan(double) function is available in libc. */
7254d342c04Schristos #define HAVE_ISNAND_IN_LIBC 1
7264d342c04Schristos 
7274d342c04Schristos /* Define if the isnan(long double) function is available in libc. */
7284d342c04Schristos #define HAVE_ISNANL_IN_LIBC 1
7294d342c04Schristos 
7304d342c04Schristos /* Define to 1 if you have the `iswcntrl' function. */
7314d342c04Schristos #define HAVE_ISWCNTRL 1
7324d342c04Schristos 
7334d342c04Schristos /* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
7344d342c04Schristos #define HAVE_LANGINFO_CODESET 1
7354d342c04Schristos 
7364d342c04Schristos /* Define to 1 if the bcrypt library is guaranteed to be present. */
7374d342c04Schristos /* #undef HAVE_LIB_BCRYPT */
7384d342c04Schristos 
7394d342c04Schristos /* Define to 1 if you have the <limits.h> header file. */
7404d342c04Schristos #define HAVE_LIMITS_H 1
7414d342c04Schristos 
7424d342c04Schristos /* Define to 1 if you have the `link' function. */
7434d342c04Schristos #define HAVE_LINK 1
7444d342c04Schristos 
7454d342c04Schristos /* Define to 1 if you have the `localtime_r' function. */
7464d342c04Schristos #define HAVE_LOCALTIME_R 1
7474d342c04Schristos 
7484d342c04Schristos /* Define to 1 if the system has the type 'long long int'. */
7494d342c04Schristos #define HAVE_LONG_LONG_INT 1
7504d342c04Schristos 
7514d342c04Schristos /* Define to 1 if you have the `lstat' function. */
7524d342c04Schristos #define HAVE_LSTAT 1
7534d342c04Schristos 
754d16b7486Schristos /* Define if malloc, realloc, and calloc set errno on allocation failure. */
7554d342c04Schristos #define HAVE_MALLOC_POSIX 1
7564d342c04Schristos 
7574d342c04Schristos /* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including
7584d342c04Schristos    config.h and <sys/mman.h>. */
7594d342c04Schristos #define HAVE_MAP_ANONYMOUS 1
7604d342c04Schristos 
7614d342c04Schristos /* Define to 1 if you have the <math.h> header file. */
7624d342c04Schristos #define HAVE_MATH_H 1
7634d342c04Schristos 
7644d342c04Schristos /* Define to 1 if you have the `mbrtowc' function. */
7654d342c04Schristos #define HAVE_MBRTOWC 1
7664d342c04Schristos 
7674d342c04Schristos /* Define to 1 if you have the `mbsinit' function. */
7684d342c04Schristos #define HAVE_MBSINIT 1
7694d342c04Schristos 
7704d342c04Schristos /* Define to 1 if you have the `mbsrtowcs' function. */
7714d342c04Schristos #define HAVE_MBSRTOWCS 1
7724d342c04Schristos 
7734d342c04Schristos /* Define to 1 if <wchar.h> declares mbstate_t. */
7744d342c04Schristos #define HAVE_MBSTATE_T 1
7754d342c04Schristos 
7764d342c04Schristos /* Define to 1 if you have the `mbtowc' function. */
7774d342c04Schristos #define HAVE_MBTOWC 1
7784d342c04Schristos 
7794d342c04Schristos /* Define to 1 if you have the `memmem' function. */
7804d342c04Schristos #define HAVE_MEMMEM 1
7814d342c04Schristos 
7824d342c04Schristos /* Define to 1 if you have the <memory.h> header file. */
7834d342c04Schristos #define HAVE_MEMORY_H 1
7844d342c04Schristos 
7854d342c04Schristos /* Define to 1 if you have the `mempcpy' function. */
786d16b7486Schristos #define HAVE_MEMPCPY 1
7874d342c04Schristos 
7884d342c04Schristos /* Define to 1 if you have the `memrchr' function. */
7894d342c04Schristos #define HAVE_MEMRCHR 1
7904d342c04Schristos 
7914d342c04Schristos /* Define to 1 if getcwd minimally works, that is, its result can be trusted
7924d342c04Schristos    when it succeeds. */
7934d342c04Schristos /* #undef HAVE_MINIMALLY_WORKING_GETCWD */
7944d342c04Schristos 
795d16b7486Schristos /* Define to 1 if you have the <minix/config.h> header file. */
796d16b7486Schristos /* #undef HAVE_MINIX_CONFIG_H */
797d16b7486Schristos 
7984d342c04Schristos /* Define to 1 if <limits.h> defines the MIN and MAX macros. */
7994d342c04Schristos /* #undef HAVE_MINMAX_IN_LIMITS_H */
8004d342c04Schristos 
8014d342c04Schristos /* Define to 1 if <sys/param.h> defines the MIN and MAX macros. */
8024d342c04Schristos #define HAVE_MINMAX_IN_SYS_PARAM_H 1
8034d342c04Schristos 
8044d342c04Schristos /* Define to 1 if you have the `mkdtemp' function. */
8054d342c04Schristos #define HAVE_MKDTEMP 1
8064d342c04Schristos 
8074d342c04Schristos /* Define to 1 if you have the `mkostemp' function. */
8084d342c04Schristos #define HAVE_MKOSTEMP 1
8094d342c04Schristos 
8104d342c04Schristos /* Define to 1 if you have the `mprotect' function. */
8114d342c04Schristos #define HAVE_MPROTECT 1
8124d342c04Schristos 
8134d342c04Schristos /* Define to 1 on MSVC platforms that have the "invalid parameter handler"
8144d342c04Schristos    concept. */
8154d342c04Schristos /* #undef HAVE_MSVC_INVALID_PARAMETER_HANDLER */
8164d342c04Schristos 
8174d342c04Schristos /* Define to 1 if you have the <netdb.h> header file. */
8184d342c04Schristos #define HAVE_NETDB_H 1
8194d342c04Schristos 
8204d342c04Schristos /* Define to 1 if you have the <netinet/in.h> header file. */
8214d342c04Schristos #define HAVE_NETINET_IN_H 1
8224d342c04Schristos 
8234d342c04Schristos /* Define to 1 if you have the `openat' function. */
8244d342c04Schristos #define HAVE_OPENAT 1
8254d342c04Schristos 
8264d342c04Schristos /* Define to 1 if you have the `opendir' function. */
8274d342c04Schristos #define HAVE_OPENDIR 1
8284d342c04Schristos 
8294d342c04Schristos /* Define to 1 if getcwd works, except it sometimes fails when it shouldn't,
8304d342c04Schristos    setting errno to ERANGE, ENAMETOOLONG, or ENOENT. */
8314d342c04Schristos /* #undef HAVE_PARTLY_WORKING_GETCWD */
8324d342c04Schristos 
8334d342c04Schristos /* Define to 1 if you have the `pipe' function. */
8344d342c04Schristos #define HAVE_PIPE 1
8354d342c04Schristos 
8364d342c04Schristos /* Define if you have the <pthread.h> header and the POSIX threads API. */
8374d342c04Schristos #define HAVE_PTHREAD_API 1
8384d342c04Schristos 
8394d342c04Schristos /* Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE. */
8404d342c04Schristos #define HAVE_PTHREAD_MUTEX_RECURSIVE 1
8414d342c04Schristos 
8424d342c04Schristos /* Define if the POSIX multithreading library has read/write locks. */
8434d342c04Schristos #define HAVE_PTHREAD_RWLOCK 1
8444d342c04Schristos 
8454d342c04Schristos /* Define if the 'pthread_rwlock_rdlock' function prefers a writer to a
8464d342c04Schristos    reader. */
8474d342c04Schristos /* #undef HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER */
8484d342c04Schristos 
8494d342c04Schristos /* Define to 1 if you have the `rawmemchr' function. */
8504d342c04Schristos /* #undef HAVE_RAWMEMCHR */
8514d342c04Schristos 
8524d342c04Schristos /* Define to 1 if you have the `readdir' function. */
8534d342c04Schristos #define HAVE_READDIR 1
8544d342c04Schristos 
8554d342c04Schristos /* Define to 1 if you have the `readlink' function. */
8564d342c04Schristos #define HAVE_READLINK 1
8574d342c04Schristos 
8584d342c04Schristos /* Define to 1 if you have the `realpath' function. */
8594d342c04Schristos #define HAVE_REALPATH 1
8604d342c04Schristos 
8614d342c04Schristos /* Define to 1 if you have the `rewinddir' function. */
8624d342c04Schristos #define HAVE_REWINDDIR 1
8634d342c04Schristos 
8644d342c04Schristos /* Define to 1 if 'long double' and 'double' have the same representation. */
8654d342c04Schristos #define HAVE_SAME_LONG_DOUBLE_AS_DOUBLE 1
8664d342c04Schristos 
8674d342c04Schristos /* Define to 1 if the system has the type `sa_family_t'. */
8684d342c04Schristos #define HAVE_SA_FAMILY_T 1
8694d342c04Schristos 
870d16b7486Schristos /* Define to 1 if you have the <sdkddkver.h> header file. */
871d16b7486Schristos /* #undef HAVE_SDKDDKVER_H */
872d16b7486Schristos 
8734d342c04Schristos /* Define to 1 if you have the <search.h> header file. */
8744d342c04Schristos #define HAVE_SEARCH_H 1
8754d342c04Schristos 
8764d342c04Schristos /* Define to 1 if you have the `setdtablesize' function. */
8774d342c04Schristos /* #undef HAVE_SETDTABLESIZE */
8784d342c04Schristos 
8794d342c04Schristos /* Define to 1 if you have the `setenv' function. */
8804d342c04Schristos #define HAVE_SETENV 1
8814d342c04Schristos 
8824d342c04Schristos /* Define to 1 if you have the `shutdown' function. */
8834d342c04Schristos #define HAVE_SHUTDOWN 1
8844d342c04Schristos 
8854d342c04Schristos /* Define to 1 if 'sig_atomic_t' is a signed integer type. */
8864d342c04Schristos #define HAVE_SIGNED_SIG_ATOMIC_T 1
8874d342c04Schristos 
8884d342c04Schristos /* Define to 1 if 'wchar_t' is a signed integer type. */
8894d342c04Schristos #define HAVE_SIGNED_WCHAR_T 1
8904d342c04Schristos 
8914d342c04Schristos /* Define to 1 if 'wint_t' is a signed integer type. */
8924d342c04Schristos #define HAVE_SIGNED_WINT_T 1
8934d342c04Schristos 
8944d342c04Schristos /* Define to 1 if the system has the type `sigset_t'. */
8954d342c04Schristos #define HAVE_SIGSET_T 1
8964d342c04Schristos 
8974d342c04Schristos /* Define to 1 if you have the `snprintf' function. */
8984d342c04Schristos #define HAVE_SNPRINTF 1
8994d342c04Schristos 
9004d342c04Schristos /* Define to 1 if you have the <stdint.h> header file. */
9014d342c04Schristos #define HAVE_STDINT_H 1
9024d342c04Schristos 
9034d342c04Schristos /* Define to 1 if you have the <stdlib.h> header file. */
9044d342c04Schristos #define HAVE_STDLIB_H 1
9054d342c04Schristos 
9064d342c04Schristos /* Define to 1 if you have the `strchrnul' function. */
9074d342c04Schristos #define HAVE_STRCHRNUL 1
9084d342c04Schristos 
9094d342c04Schristos /* Define to 1 if you have the `strerror_r' function. */
9104d342c04Schristos #define HAVE_STRERROR_R 1
9114d342c04Schristos 
9124d342c04Schristos /* Define to 1 if you have the <strings.h> header file. */
9134d342c04Schristos #define HAVE_STRINGS_H 1
9144d342c04Schristos 
9154d342c04Schristos /* Define to 1 if you have the <string.h> header file. */
9164d342c04Schristos #define HAVE_STRING_H 1
9174d342c04Schristos 
9184d342c04Schristos /* Define to 1 if you have the `strtok_r' function. */
9194d342c04Schristos #define HAVE_STRTOK_R 1
9204d342c04Schristos 
9214d342c04Schristos /* Define if there is a member named d_type in the struct describing directory
9224d342c04Schristos    headers. */
9234d342c04Schristos #define HAVE_STRUCT_DIRENT_D_TYPE 1
9244d342c04Schristos 
9254d342c04Schristos /* Define to 1 if the system has the type `struct sockaddr_storage'. */
9264d342c04Schristos #define HAVE_STRUCT_SOCKADDR_STORAGE 1
9274d342c04Schristos 
9284d342c04Schristos /* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */
9294d342c04Schristos #define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1
9304d342c04Schristos 
9314d342c04Schristos /* Define to 1 if `st_atimensec' is a member of `struct stat'. */
9324d342c04Schristos /* #undef HAVE_STRUCT_STAT_ST_ATIMENSEC */
9334d342c04Schristos 
9344d342c04Schristos /* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */
9354d342c04Schristos /* #undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC */
9364d342c04Schristos 
9374d342c04Schristos /* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */
9384d342c04Schristos /* #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC */
9394d342c04Schristos 
9404d342c04Schristos /* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */
9414d342c04Schristos #define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1
9424d342c04Schristos 
9434d342c04Schristos /* Define to 1 if `st_birthtimensec' is a member of `struct stat'. */
9444d342c04Schristos /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC */
9454d342c04Schristos 
9464d342c04Schristos /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */
9474d342c04Schristos #define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1
9484d342c04Schristos 
9494d342c04Schristos /* Define to 1 if `st_birthtim.tv_nsec' is a member of `struct stat'. */
9504d342c04Schristos /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC */
9514d342c04Schristos 
9524d342c04Schristos /* Define to 1 if you have the `symlink' function. */
9534d342c04Schristos #define HAVE_SYMLINK 1
9544d342c04Schristos 
9554d342c04Schristos /* Define to 1 if you have the <sys/bitypes.h> header file. */
9564d342c04Schristos /* #undef HAVE_SYS_BITYPES_H */
9574d342c04Schristos 
9584d342c04Schristos /* Define to 1 if you have the <sys/inttypes.h> header file. */
9594d342c04Schristos #define HAVE_SYS_INTTYPES_H 1
9604d342c04Schristos 
9614d342c04Schristos /* Define to 1 if you have the <sys/mman.h> header file. */
9624d342c04Schristos #define HAVE_SYS_MMAN_H 1
9634d342c04Schristos 
9644d342c04Schristos /* Define to 1 if you have the <sys/param.h> header file. */
9654d342c04Schristos #define HAVE_SYS_PARAM_H 1
9664d342c04Schristos 
9674d342c04Schristos /* Define to 1 if you have the <sys/random.h> header file. */
968d52bc725Schristos #define HAVE_SYS_RANDOM_H 1
9694d342c04Schristos 
970d16b7486Schristos /* Define to 1 if you have the <sys/select.h> header file. */
971d16b7486Schristos #define HAVE_SYS_SELECT_H 1
972d16b7486Schristos 
9734d342c04Schristos /* Define to 1 if you have the <sys/socket.h> header file. */
9744d342c04Schristos #define HAVE_SYS_SOCKET_H 1
9754d342c04Schristos 
9764d342c04Schristos /* Define to 1 if you have the <sys/stat.h> header file. */
9774d342c04Schristos #define HAVE_SYS_STAT_H 1
9784d342c04Schristos 
9794d342c04Schristos /* Define to 1 if you have the <sys/time.h> header file. */
9804d342c04Schristos #define HAVE_SYS_TIME_H 1
9814d342c04Schristos 
9824d342c04Schristos /* Define to 1 if you have the <sys/types.h> header file. */
9834d342c04Schristos #define HAVE_SYS_TYPES_H 1
9844d342c04Schristos 
9854d342c04Schristos /* Define to 1 if you have the <sys/uio.h> header file. */
9864d342c04Schristos #define HAVE_SYS_UIO_H 1
9874d342c04Schristos 
988d16b7486Schristos /* Define to 1 if you have the <sys/wait.h> header file. */
989d16b7486Schristos #define HAVE_SYS_WAIT_H 1
990d16b7486Schristos 
9914d342c04Schristos /* Define to 1 if you have the `thrd_create' function. */
9924d342c04Schristos /* #undef HAVE_THRD_CREATE */
9934d342c04Schristos 
9944d342c04Schristos /* Define to 1 if you have the <threads.h> header file. */
9954d342c04Schristos #define HAVE_THREADS_H 1
9964d342c04Schristos 
9974d342c04Schristos /* Define to 1 if you have the `towlower' function. */
9984d342c04Schristos #define HAVE_TOWLOWER 1
9994d342c04Schristos 
10004d342c04Schristos /* Define to 1 if you have the `tsearch' function. */
10014d342c04Schristos #define HAVE_TSEARCH 1
10024d342c04Schristos 
10034d342c04Schristos /* Define to 1 if you have the <unistd.h> header file. */
10044d342c04Schristos #define HAVE_UNISTD_H 1
10054d342c04Schristos 
10064d342c04Schristos /* Define to 1 if you have the `unsetenv' function. */
10074d342c04Schristos #define HAVE_UNSETENV 1
10084d342c04Schristos 
10094d342c04Schristos /* Define to 1 if the system has the type 'unsigned long long int'. */
10104d342c04Schristos #define HAVE_UNSIGNED_LONG_LONG_INT 1
10114d342c04Schristos 
10124d342c04Schristos /* Define if you have a global __progname variable */
10134d342c04Schristos #define HAVE_VAR___PROGNAME 1
10144d342c04Schristos 
10154d342c04Schristos /* Define to 1 or 0, depending whether the compiler supports simple visibility
10164d342c04Schristos    declarations. */
10174d342c04Schristos #define HAVE_VISIBILITY 1
10184d342c04Schristos 
10194d342c04Schristos /* Define to 1 if you have the <wchar.h> header file. */
10204d342c04Schristos #define HAVE_WCHAR_H 1
10214d342c04Schristos 
10224d342c04Schristos /* Define if you have the 'wchar_t' type. */
10234d342c04Schristos #define HAVE_WCHAR_T 1
10244d342c04Schristos 
10254d342c04Schristos /* Define to 1 if you have the <wctype.h> header file. */
10264d342c04Schristos #define HAVE_WCTYPE_H 1
10274d342c04Schristos 
10284d342c04Schristos /* Define to 1 if the compiler and linker support weak declarations of
10294d342c04Schristos    symbols. */
10304d342c04Schristos #define HAVE_WEAK_SYMBOLS 1
10314d342c04Schristos 
10324d342c04Schristos /* Define to 1 if you have the <windows.h> header file. */
10334d342c04Schristos /* #undef HAVE_WINDOWS_H */
10344d342c04Schristos 
10354d342c04Schristos /* Define to 1 if you have the <winsock2.h> header file. */
10364d342c04Schristos /* #undef HAVE_WINSOCK2_H */
10374d342c04Schristos 
10384d342c04Schristos /* Define if you have the 'wint_t' type. */
10394d342c04Schristos #define HAVE_WINT_T 1
10404d342c04Schristos 
10414d342c04Schristos /* Define to 1 if you have the `wmempcpy' function. */
1042d16b7486Schristos #define HAVE_WMEMPCPY 1
10434d342c04Schristos 
10444d342c04Schristos /* Define to 1 if fstatat (..., 0) works. For example, it does not work in AIX
10454d342c04Schristos    7.1. */
1046d16b7486Schristos #define HAVE_WORKING_FSTATAT_ZERO_FLAG 1
10474d342c04Schristos 
10484d342c04Schristos /* Define to 1 if O_NOATIME works. */
10494d342c04Schristos #define HAVE_WORKING_O_NOATIME 0
10504d342c04Schristos 
10514d342c04Schristos /* Define to 1 if O_NOFOLLOW works. */
10524d342c04Schristos #define HAVE_WORKING_O_NOFOLLOW 0
10534d342c04Schristos 
10544d342c04Schristos /* Define to 1 if you have the <ws2tcpip.h> header file. */
10554d342c04Schristos /* #undef HAVE_WS2TCPIP_H */
10564d342c04Schristos 
10574d342c04Schristos /* Define to 1 if you have the <xlocale.h> header file. */
10584d342c04Schristos /* #undef HAVE_XLOCALE_H */
10594d342c04Schristos 
10604d342c04Schristos /* Define to 1 if the system has the type `_Bool'. */
10614d342c04Schristos #define HAVE__BOOL 1
10624d342c04Schristos 
10634d342c04Schristos /* Define to 1 if you have the `_set_invalid_parameter_handler' function. */
10644d342c04Schristos /* #undef HAVE__SET_INVALID_PARAMETER_HANDLER */
10654d342c04Schristos 
10664d342c04Schristos /* Define to 1 if the compiler supports __builtin_expect,
10674d342c04Schristos    and to 2 if <builtins.h> does.  */
10684d342c04Schristos #define HAVE___BUILTIN_EXPECT 1
10694d342c04Schristos #ifndef HAVE___BUILTIN_EXPECT
10704d342c04Schristos # define __builtin_expect(e, c) (e)
10714d342c04Schristos #elif HAVE___BUILTIN_EXPECT == 2
10724d342c04Schristos # include <builtins.h>
10734d342c04Schristos #endif
10744d342c04Schristos 
10754d342c04Schristos 
1076d16b7486Schristos /* Define to 1 if ctype.h defines __header_inline. */
1077d16b7486Schristos /* #undef HAVE___HEADER_INLINE */
1078d16b7486Schristos 
1079d16b7486Schristos /* Please see the Gnulib manual for how to use these macros.
1080d16b7486Schristos 
1081d16b7486Schristos    Suppress extern inline with HP-UX cc, as it appears to be broken; see
1082d16b7486Schristos    <https://lists.gnu.org/r/bug-texinfo/2013-02/msg00030.html>.
1083d16b7486Schristos 
1084d16b7486Schristos    Suppress extern inline with Sun C in standards-conformance mode, as it
1085d16b7486Schristos    mishandles inline functions that call each other.  E.g., for 'inline void f
1086d16b7486Schristos    (void) { } inline void g (void) { f (); }', c99 incorrectly complains
1087d16b7486Schristos    'reference to static identifier "f" in extern inline function'.
1088d16b7486Schristos    This bug was observed with Oracle Developer Studio 12.6
1089d16b7486Schristos    (Sun C 5.15 SunOS_sparc 2017/05/30).
1090d16b7486Schristos 
1091d16b7486Schristos    Suppress extern inline (with or without __attribute__ ((__gnu_inline__)))
1092d16b7486Schristos    on configurations that mistakenly use 'static inline' to implement
1093d16b7486Schristos    functions or macros in standard C headers like <ctype.h>.  For example,
1094d16b7486Schristos    if isdigit is mistakenly implemented via a static inline function,
1095d16b7486Schristos    a program containing an extern inline function that calls isdigit
1096d16b7486Schristos    may not work since the C standard prohibits extern inline functions
1097d16b7486Schristos    from calling static functions (ISO C 99 section 6.7.4.(3).
1098d16b7486Schristos    This bug is known to occur on:
1099d16b7486Schristos 
1100d16b7486Schristos      OS X 10.8 and earlier; see:
1101d16b7486Schristos      https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html
1102d16b7486Schristos 
1103d16b7486Schristos      DragonFly; see
1104d16b7486Schristos      http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log
1105d16b7486Schristos 
1106d16b7486Schristos      FreeBSD; see:
1107d16b7486Schristos      https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html
1108d16b7486Schristos 
1109d16b7486Schristos    OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
1110d16b7486Schristos    for clang but remains for g++; see <https://trac.macports.org/ticket/41033>.
1111d16b7486Schristos    Assume DragonFly and FreeBSD will be similar.
1112d16b7486Schristos 
1113d16b7486Schristos    GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
1114d16b7486Schristos    inline semantics, unless -fgnu89-inline is used.  It defines a macro
1115d16b7486Schristos    __GNUC_STDC_INLINE__ to indicate this situation or a macro
1116d16b7486Schristos    __GNUC_GNU_INLINE__ to indicate the opposite situation.
1117d16b7486Schristos    GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline
1118d16b7486Schristos    semantics but warns, unless -fgnu89-inline is used:
1119d16b7486Schristos      warning: C99 inline functions are not supported; using GNU89
1120d16b7486Schristos      warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute
1121d16b7486Schristos    It defines a macro __GNUC_GNU_INLINE__ to indicate this situation.
1122d16b7486Schristos  */
1123d16b7486Schristos #if (((defined __APPLE__ && defined __MACH__) \
1124d16b7486Schristos       || defined __DragonFly__ || defined __FreeBSD__) \
1125d16b7486Schristos      && (defined HAVE___HEADER_INLINE \
1126d16b7486Schristos          ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \
1127d16b7486Schristos             && ! defined __clang__) \
1128d16b7486Schristos          : ((! defined _DONT_USE_CTYPE_INLINE_ \
1129d16b7486Schristos              && (defined __GNUC__ || defined __cplusplus)) \
1130d16b7486Schristos             || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
1131d16b7486Schristos                 && defined __GNUC__ && ! defined __cplusplus))))
1132d16b7486Schristos # define _GL_EXTERN_INLINE_STDHEADER_BUG
1133d16b7486Schristos #endif
1134d16b7486Schristos #if ((__GNUC__ \
1135d16b7486Schristos       ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
1136d16b7486Schristos       : (199901L <= __STDC_VERSION__ \
1137d16b7486Schristos          && !defined __HP_cc \
1138d16b7486Schristos          && !defined __PGI \
1139d16b7486Schristos          && !(defined __SUNPRO_C && __STDC__))) \
1140d16b7486Schristos      && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
1141d16b7486Schristos # define _GL_INLINE inline
1142d16b7486Schristos # define _GL_EXTERN_INLINE extern inline
1143d16b7486Schristos # define _GL_EXTERN_INLINE_IN_USE
1144d16b7486Schristos #elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
1145d16b7486Schristos        && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
1146d16b7486Schristos # if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__
1147d16b7486Schristos    /* __gnu_inline__ suppresses a GCC 4.2 diagnostic.  */
1148d16b7486Schristos #  define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
1149d16b7486Schristos # else
1150d16b7486Schristos #  define _GL_INLINE extern inline
1151d16b7486Schristos # endif
1152d16b7486Schristos # define _GL_EXTERN_INLINE extern
1153d16b7486Schristos # define _GL_EXTERN_INLINE_IN_USE
1154d16b7486Schristos #else
1155d16b7486Schristos # define _GL_INLINE _GL_UNUSED static
1156d16b7486Schristos # define _GL_EXTERN_INLINE _GL_UNUSED static
1157d16b7486Schristos #endif
1158d16b7486Schristos 
1159d16b7486Schristos /* In GCC 4.6 (inclusive) to 5.1 (exclusive),
1160d16b7486Schristos    suppress bogus "no previous prototype for 'FOO'"
1161d16b7486Schristos    and "no previous declaration for 'FOO'" diagnostics,
1162d16b7486Schristos    when FOO is an inline function in the header; see
1163d16b7486Schristos    <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and
1164d16b7486Schristos    <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>.  */
1165d16b7486Schristos #if __GNUC__ == 4 && 6 <= __GNUC_MINOR__
1166d16b7486Schristos # if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__
1167d16b7486Schristos #  define _GL_INLINE_HEADER_CONST_PRAGMA
1168d16b7486Schristos # else
1169d16b7486Schristos #  define _GL_INLINE_HEADER_CONST_PRAGMA \
1170d16b7486Schristos      _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"")
1171d16b7486Schristos # endif
1172d16b7486Schristos # define _GL_INLINE_HEADER_BEGIN \
1173d16b7486Schristos     _Pragma ("GCC diagnostic push") \
1174d16b7486Schristos     _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \
1175d16b7486Schristos     _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \
1176d16b7486Schristos     _GL_INLINE_HEADER_CONST_PRAGMA
1177d16b7486Schristos # define _GL_INLINE_HEADER_END \
1178d16b7486Schristos     _Pragma ("GCC diagnostic pop")
1179d16b7486Schristos #else
1180d16b7486Schristos # define _GL_INLINE_HEADER_BEGIN
1181d16b7486Schristos # define _GL_INLINE_HEADER_END
1182d16b7486Schristos #endif
1183d16b7486Schristos 
11844d342c04Schristos /* Define to 1 if the compiler supports the keyword '__inline'. */
11854d342c04Schristos #define HAVE___INLINE 1
11864d342c04Schristos 
11874d342c04Schristos /* Define to 1 if you have the `__xpg_strerror_r' function. */
11884d342c04Schristos /* #undef HAVE___XPG_STRERROR_R */
11894d342c04Schristos 
11904d342c04Schristos /* Define as the bit index in the word where to find bit 0 of the exponent of
11914d342c04Schristos    'long double'. */
11924d342c04Schristos /* #undef LDBL_EXPBIT0_BIT */
11934d342c04Schristos 
11944d342c04Schristos /* Define as the word index where to find the exponent of 'long double'. */
11954d342c04Schristos /* #undef LDBL_EXPBIT0_WORD */
11964d342c04Schristos 
11974d342c04Schristos /* Define to 1 if 'lstat' dereferences a symlink specified with a trailing
11984d342c04Schristos    slash. */
1199d16b7486Schristos /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */
12004d342c04Schristos 
12014d342c04Schristos /* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */
12024d342c04Schristos #define MALLOC_0_IS_NONNULL 1
12034d342c04Schristos 
12044d342c04Schristos /* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */
12054d342c04Schristos /* #undef MAP_ANONYMOUS */
12064d342c04Schristos 
12074d342c04Schristos /* Define if the mbrtowc function does not return (size_t) -2 for empty input.
12084d342c04Schristos    */
12094d342c04Schristos /* #undef MBRTOWC_EMPTY_INPUT_BUG */
12104d342c04Schristos 
12114d342c04Schristos /* Define if the mbrtowc function may signal encoding errors in the C locale.
12124d342c04Schristos    */
1213d16b7486Schristos #define MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ 1
12144d342c04Schristos 
12154d342c04Schristos /* Define if the mbrtowc function has the NULL pwc argument bug. */
12164d342c04Schristos /* #undef MBRTOWC_NULL_ARG1_BUG */
12174d342c04Schristos 
12184d342c04Schristos /* Define if the mbrtowc function has the NULL string argument bug. */
12194d342c04Schristos /* #undef MBRTOWC_NULL_ARG2_BUG */
12204d342c04Schristos 
12214d342c04Schristos /* Define if the mbrtowc function does not return 0 for a NUL character. */
12224d342c04Schristos /* #undef MBRTOWC_NUL_RETVAL_BUG */
12234d342c04Schristos 
12244d342c04Schristos /* Define if the mbrtowc function returns a wrong return value. */
12254d342c04Schristos /* #undef MBRTOWC_RETVAL_BUG */
12264d342c04Schristos 
12274d342c04Schristos /* Define if the mbrtowc function stores a wide character when reporting
12284d342c04Schristos    incomplete input. */
12294d342c04Schristos /* #undef MBRTOWC_STORES_INCOMPLETE_BUG */
12304d342c04Schristos 
12314d342c04Schristos /* Use GNU style printf and scanf.  */
12324d342c04Schristos #ifndef __USE_MINGW_ANSI_STDIO
12334d342c04Schristos # define __USE_MINGW_ANSI_STDIO 1
12344d342c04Schristos #endif
12354d342c04Schristos 
12364d342c04Schristos 
12374d342c04Schristos /* Define to 1 if open() fails to recognize a trailing slash. */
12384d342c04Schristos /* #undef OPEN_TRAILING_SLASH_BUG */
12394d342c04Schristos 
12404d342c04Schristos /* Define to the address where bug reports for this package should be sent. */
12414d342c04Schristos #define PACKAGE_BUGREPORT ""
12424d342c04Schristos 
12434d342c04Schristos /* Define to the full name of this package. */
12444d342c04Schristos #define PACKAGE_NAME "libgnu"
12454d342c04Schristos 
12464d342c04Schristos /* Define to the full name and version of this package. */
12474d342c04Schristos #define PACKAGE_STRING "libgnu UNUSED-VERSION"
12484d342c04Schristos 
12494d342c04Schristos /* Define to the one symbol short name of this package. */
12504d342c04Schristos #define PACKAGE_TARNAME "libgnu"
12514d342c04Schristos 
12524d342c04Schristos /* Define to the home page for this package. */
12534d342c04Schristos #define PACKAGE_URL ""
12544d342c04Schristos 
12554d342c04Schristos /* Define to the version of this package. */
12564d342c04Schristos #define PACKAGE_VERSION "UNUSED-VERSION"
12574d342c04Schristos 
12584d342c04Schristos /* Define to the type that is the result of default argument promotions of
12594d342c04Schristos    type mode_t. */
12604d342c04Schristos #define PROMOTED_MODE_T mode_t
12614d342c04Schristos 
12624d342c04Schristos /* Define if the pthread_in_use() detection is hard. */
12634d342c04Schristos /* #undef PTHREAD_IN_USE_DETECTION_HARD */
12644d342c04Schristos 
12654d342c04Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
12664d342c04Schristos    'ptrdiff_t'. */
12674d342c04Schristos #define PTRDIFF_T_SUFFIX l
12684d342c04Schristos 
12694d342c04Schristos /* Define to 1 if readlink fails to recognize a trailing slash. */
1270d16b7486Schristos #define READLINK_TRAILING_SLASH_BUG 1
1271d16b7486Schristos 
1272d16b7486Schristos /* Define to 1 if readlink sets errno instead of truncating a too-long link.
1273d16b7486Schristos    */
1274d16b7486Schristos #define READLINK_TRUNCATE_BUG 1
12754d342c04Schristos 
12764d342c04Schristos /* Define if rename does not work when the destination file exists, as on
12774d342c04Schristos    Cygwin 1.5 or Windows. */
1278*800f65cfSrin /* #undef RENAME_DEST_EXISTS_BUG */
12794d342c04Schristos 
12804d342c04Schristos /* Define if rename fails to leave hard links alone, as on NetBSD 1.6 or
12814d342c04Schristos    Cygwin 1.5. */
1282*800f65cfSrin /* #undef RENAME_HARD_LINK_BUG */
12834d342c04Schristos 
12844d342c04Schristos /* Define if rename does not correctly handle slashes on the destination
12854d342c04Schristos    argument, such as on Solaris 11 or NetBSD 1.6. */
1286*800f65cfSrin /* #undef RENAME_TRAILING_SLASH_DEST_BUG */
12874d342c04Schristos 
12884d342c04Schristos /* Define if rename does not correctly handle slashes on the source argument,
12894d342c04Schristos    such as on Solaris 9 or cygwin 1.5. */
1290*800f65cfSrin /* #undef RENAME_TRAILING_SLASH_SOURCE_BUG */
12914d342c04Schristos 
12924d342c04Schristos /* Define to 1 if gnulib's dirfd() replacement is used. */
12934d342c04Schristos /* #undef REPLACE_DIRFD */
12944d342c04Schristos 
12954d342c04Schristos /* Define to 1 if gnulib's fchdir() replacement is used. */
12964d342c04Schristos /* #undef REPLACE_FCHDIR */
12974d342c04Schristos 
12984d342c04Schristos /* Define to 1 if stat needs help when passed a file name with a trailing
12994d342c04Schristos    slash */
1300d16b7486Schristos #define REPLACE_FUNC_STAT_FILE 1
13014d342c04Schristos 
13024d342c04Schristos /* Define to 1 if open() should work around the inability to open a directory.
13034d342c04Schristos    */
13044d342c04Schristos /* #undef REPLACE_OPEN_DIRECTORY */
13054d342c04Schristos 
13064d342c04Schristos /* Define to 1 if strerror(0) does not return a message implying success. */
13074d342c04Schristos #define REPLACE_STRERROR_0 1
13084d342c04Schristos 
13094d342c04Schristos /* Define to 1 if setlocale (LC_ALL, NULL) is multithread-safe. */
13104d342c04Schristos #define SETLOCALE_NULL_ALL_MTSAFE 0
13114d342c04Schristos 
13124d342c04Schristos /* Define to 1 if setlocale (category, NULL) is multithread-safe. */
13134d342c04Schristos #define SETLOCALE_NULL_ONE_MTSAFE 1
13144d342c04Schristos 
13154d342c04Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
13164d342c04Schristos    'sig_atomic_t'. */
13174d342c04Schristos #define SIG_ATOMIC_T_SUFFIX
13184d342c04Schristos 
13194d342c04Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
13204d342c04Schristos    'size_t'. */
13214d342c04Schristos #define SIZE_T_SUFFIX ul
13224d342c04Schristos 
13234d342c04Schristos /* If using the C implementation of alloca, define if you know the
13244d342c04Schristos    direction of stack growth for your system; otherwise it will be
13254d342c04Schristos    automatically deduced at runtime.
13264d342c04Schristos         STACK_DIRECTION > 0 => grows toward higher addresses
13274d342c04Schristos         STACK_DIRECTION < 0 => grows toward lower addresses
13284d342c04Schristos         STACK_DIRECTION = 0 => direction of growth unknown */
13294d342c04Schristos /* #undef STACK_DIRECTION */
13304d342c04Schristos 
13314d342c04Schristos /* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
13324d342c04Schristos /* #undef STAT_MACROS_BROKEN */
13334d342c04Schristos 
13344d342c04Schristos /* Define to 1 if you have the ANSI C header files. */
13354d342c04Schristos #define STDC_HEADERS 1
13364d342c04Schristos 
13374d342c04Schristos /* Define to 1 if strerror_r returns char *. */
13384d342c04Schristos /* #undef STRERROR_R_CHAR_P */
13394d342c04Schristos 
13404d342c04Schristos /* Define to 1 if the type of the st_atim member of a struct stat is struct
13414d342c04Schristos    timespec. */
13424d342c04Schristos #define TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1
13434d342c04Schristos 
13444d342c04Schristos /* Define if the combination of the ISO C and POSIX multithreading APIs can be
13454d342c04Schristos    used. */
13464d342c04Schristos /* #undef USE_ISOC_AND_POSIX_THREADS */
13474d342c04Schristos 
13484d342c04Schristos /* Define if the ISO C multithreading library can be used. */
13494d342c04Schristos /* #undef USE_ISOC_THREADS */
13504d342c04Schristos 
13514d342c04Schristos /* Define if the POSIX multithreading library can be used. */
13524d342c04Schristos #define USE_POSIX_THREADS 1
13534d342c04Schristos 
1354d16b7486Schristos /* Define if references to the POSIX multithreading library are satisfied by
1355d16b7486Schristos    libc. */
1356d16b7486Schristos /* #undef USE_POSIX_THREADS_FROM_LIBC */
1357d16b7486Schristos 
13584d342c04Schristos /* Define if references to the POSIX multithreading library should be made
13594d342c04Schristos    weak. */
13604d342c04Schristos #define USE_POSIX_THREADS_WEAK 1
13614d342c04Schristos 
13624d342c04Schristos /* Enable extensions on AIX 3, Interix.  */
13634d342c04Schristos #ifndef _ALL_SOURCE
13644d342c04Schristos # define _ALL_SOURCE 1
13654d342c04Schristos #endif
13664d342c04Schristos /* Enable general extensions on macOS.  */
13674d342c04Schristos #ifndef _DARWIN_C_SOURCE
13684d342c04Schristos # define _DARWIN_C_SOURCE 1
13694d342c04Schristos #endif
1370d16b7486Schristos /* Enable general extensions on Solaris.  */
1371d16b7486Schristos #ifndef __EXTENSIONS__
1372d16b7486Schristos # define __EXTENSIONS__ 1
1373d16b7486Schristos #endif
13744d342c04Schristos /* Enable GNU extensions on systems that have them.  */
13754d342c04Schristos #ifndef _GNU_SOURCE
13764d342c04Schristos # define _GNU_SOURCE 1
13774d342c04Schristos #endif
1378d16b7486Schristos /* Enable X/Open compliant socket functions that do not require linking
1379d16b7486Schristos    with -lxnet on HP-UX 11.11.  */
1380d16b7486Schristos #ifndef _HPUX_ALT_XOPEN_SOCKET_API
1381d16b7486Schristos # define _HPUX_ALT_XOPEN_SOCKET_API 1
1382d16b7486Schristos #endif
1383d16b7486Schristos /* Identify the host operating system as Minix.
1384d16b7486Schristos    This macro does not affect the system headers' behavior.
1385d16b7486Schristos    A future release of Autoconf may stop defining this macro.  */
1386d16b7486Schristos #ifndef _MINIX
1387d16b7486Schristos /* # undef _MINIX */
1388d16b7486Schristos #endif
1389d16b7486Schristos /* Enable general extensions on NetBSD.
1390d16b7486Schristos    Enable NetBSD compatibility extensions on Minix.  */
13914d342c04Schristos #ifndef _NETBSD_SOURCE
13924d342c04Schristos # define _NETBSD_SOURCE 1
13934d342c04Schristos #endif
1394d16b7486Schristos /* Enable OpenBSD compatibility extensions on NetBSD.
1395d16b7486Schristos    Oddly enough, this does nothing on OpenBSD.  */
13964d342c04Schristos #ifndef _OPENBSD_SOURCE
13974d342c04Schristos # define _OPENBSD_SOURCE 1
13984d342c04Schristos #endif
1399d16b7486Schristos /* Define to 1 if needed for POSIX-compatible behavior.  */
1400d16b7486Schristos #ifndef _POSIX_SOURCE
1401d16b7486Schristos /* # undef _POSIX_SOURCE */
1402d16b7486Schristos #endif
1403d16b7486Schristos /* Define to 2 if needed for POSIX-compatible behavior.  */
1404d16b7486Schristos #ifndef _POSIX_1_SOURCE
1405d16b7486Schristos /* # undef _POSIX_1_SOURCE */
1406d16b7486Schristos #endif
1407d16b7486Schristos /* Enable POSIX-compatible threading on Solaris.  */
14084d342c04Schristos #ifndef _POSIX_PTHREAD_SEMANTICS
14094d342c04Schristos # define _POSIX_PTHREAD_SEMANTICS 1
14104d342c04Schristos #endif
14114d342c04Schristos /* Enable extensions specified by ISO/IEC TS 18661-5:2014.  */
14124d342c04Schristos #ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
14134d342c04Schristos # define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1
14144d342c04Schristos #endif
14154d342c04Schristos /* Enable extensions specified by ISO/IEC TS 18661-1:2014.  */
14164d342c04Schristos #ifndef __STDC_WANT_IEC_60559_BFP_EXT__
14174d342c04Schristos # define __STDC_WANT_IEC_60559_BFP_EXT__ 1
14184d342c04Schristos #endif
14194d342c04Schristos /* Enable extensions specified by ISO/IEC TS 18661-2:2015.  */
14204d342c04Schristos #ifndef __STDC_WANT_IEC_60559_DFP_EXT__
14214d342c04Schristos # define __STDC_WANT_IEC_60559_DFP_EXT__ 1
14224d342c04Schristos #endif
14234d342c04Schristos /* Enable extensions specified by ISO/IEC TS 18661-4:2015.  */
14244d342c04Schristos #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
14254d342c04Schristos # define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1
14264d342c04Schristos #endif
14274d342c04Schristos /* Enable extensions specified by ISO/IEC TS 18661-3:2015.  */
14284d342c04Schristos #ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
14294d342c04Schristos # define __STDC_WANT_IEC_60559_TYPES_EXT__ 1
14304d342c04Schristos #endif
14314d342c04Schristos /* Enable extensions specified by ISO/IEC TR 24731-2:2010.  */
14324d342c04Schristos #ifndef __STDC_WANT_LIB_EXT2__
14334d342c04Schristos # define __STDC_WANT_LIB_EXT2__ 1
14344d342c04Schristos #endif
14354d342c04Schristos /* Enable extensions specified by ISO/IEC 24747:2009.  */
14364d342c04Schristos #ifndef __STDC_WANT_MATH_SPEC_FUNCS__
14374d342c04Schristos # define __STDC_WANT_MATH_SPEC_FUNCS__ 1
14384d342c04Schristos #endif
14394d342c04Schristos /* Enable extensions on HP NonStop.  */
14404d342c04Schristos #ifndef _TANDEM_SOURCE
14414d342c04Schristos # define _TANDEM_SOURCE 1
14424d342c04Schristos #endif
1443d16b7486Schristos /* Enable X/Open extensions.  Define to 500 only if necessary
1444d16b7486Schristos    to make mbstate_t available.  */
14454d342c04Schristos #ifndef _XOPEN_SOURCE
14464d342c04Schristos /* # undef _XOPEN_SOURCE */
14474d342c04Schristos #endif
14484d342c04Schristos 
14494d342c04Schristos 
14504d342c04Schristos /* Define if the native Windows multithreading API can be used. */
14514d342c04Schristos /* #undef USE_WINDOWS_THREADS */
14524d342c04Schristos 
14534d342c04Schristos /* Define to 1 if unsetenv returns void instead of int. */
14544d342c04Schristos /* #undef VOID_UNSETENV */
14554d342c04Schristos 
14564d342c04Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
14574d342c04Schristos    'wchar_t'. */
14584d342c04Schristos #define WCHAR_T_SUFFIX
14594d342c04Schristos 
1460d16b7486Schristos /* Define if WSAStartup is needed. */
1461d16b7486Schristos /* #undef WINDOWS_SOCKETS */
1462d16b7486Schristos 
14634d342c04Schristos /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
14644d342c04Schristos    'wint_t'. */
14654d342c04Schristos #define WINT_T_SUFFIX
14664d342c04Schristos 
14674d342c04Schristos /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
14684d342c04Schristos    significant byte first (like Motorola and SPARC, unlike Intel). */
14694d342c04Schristos #if defined AC_APPLE_UNIVERSAL_BUILD
14704d342c04Schristos # if defined __BIG_ENDIAN__
14714d342c04Schristos #  define WORDS_BIGENDIAN 1
14724d342c04Schristos # endif
14734d342c04Schristos #else
14744d342c04Schristos # ifndef WORDS_BIGENDIAN
14754d342c04Schristos #  define WORDS_BIGENDIAN 1
14764d342c04Schristos # endif
14774d342c04Schristos #endif
14784d342c04Schristos 
14794d342c04Schristos /* Number of bits in a file offset, on hosts where this is settable. */
14804d342c04Schristos /* #undef _FILE_OFFSET_BITS */
14814d342c04Schristos 
14824d342c04Schristos /* True if the compiler says it groks GNU C version MAJOR.MINOR.  */
14834d342c04Schristos #if defined __GNUC__ && defined __GNUC_MINOR__
14844d342c04Schristos # define _GL_GNUC_PREREQ(major, minor) \
14854d342c04Schristos     ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__))
14864d342c04Schristos #else
14874d342c04Schristos # define _GL_GNUC_PREREQ(major, minor) 0
14884d342c04Schristos #endif
14894d342c04Schristos 
14904d342c04Schristos 
1491d16b7486Schristos /* Define to enable the declarations of ISO C 11 types and functions. */
1492d16b7486Schristos /* #undef _ISOC11_SOURCE */
1493d16b7486Schristos 
14944d342c04Schristos /* Define for large files, on AIX-style hosts. */
14954d342c04Schristos /* #undef _LARGE_FILES */
14964d342c04Schristos 
14974d342c04Schristos /* Define to 1 on Solaris. */
14984d342c04Schristos /* #undef _LCONV_C99 */
14994d342c04Schristos 
15004d342c04Schristos /* The _Noreturn keyword of C11.  */
15014d342c04Schristos #ifndef _Noreturn
15024d342c04Schristos # if (defined __cplusplus \
15034d342c04Schristos       && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
15044d342c04Schristos           || (defined _MSC_VER && 1900 <= _MSC_VER)) \
15054d342c04Schristos       && 0)
15064d342c04Schristos     /* [[noreturn]] is not practically usable, because with it the syntax
15074d342c04Schristos          extern _Noreturn void func (...);
15084d342c04Schristos        would not be valid; such a declaration would only be valid with 'extern'
15094d342c04Schristos        and '_Noreturn' swapped, or without the 'extern' keyword.  However, some
15104d342c04Schristos        AIX system header files and several gnulib header files use precisely
15114d342c04Schristos        this syntax with 'extern'.  */
15124d342c04Schristos #  define _Noreturn [[noreturn]]
15134d342c04Schristos # elif ((!defined __cplusplus || defined __clang__) \
15144d342c04Schristos         && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
1515d16b7486Schristos             || (!defined __STRICT_ANSI__ \
1516d16b7486Schristos                 && (_GL_GNUC_PREREQ (4, 7) \
15174d342c04Schristos                     || (defined __apple_build_version__ \
15184d342c04Schristos                         ? 6000000 <= __apple_build_version__ \
1519d16b7486Schristos                         : 3 < __clang_major__ + (5 <= __clang_minor__))))))
15204d342c04Schristos    /* _Noreturn works as-is.  */
1521d16b7486Schristos # elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C
15224d342c04Schristos #  define _Noreturn __attribute__ ((__noreturn__))
15234d342c04Schristos # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
15244d342c04Schristos #  define _Noreturn __declspec (noreturn)
15254d342c04Schristos # else
15264d342c04Schristos #  define _Noreturn
15274d342c04Schristos # endif
15284d342c04Schristos #endif
15294d342c04Schristos 
15304d342c04Schristos 
15314d342c04Schristos /* Define to 1 in order to get the POSIX compatible declarations of socket
15324d342c04Schristos    functions. */
15334d342c04Schristos /* #undef _POSIX_PII_SOCKET */
15344d342c04Schristos 
1535d16b7486Schristos /* Number of bits in a timestamp, on hosts where this is settable. */
1536d16b7486Schristos /* #undef _TIME_BITS */
15374d342c04Schristos 
15384d342c04Schristos /* For standard stat data types on VMS. */
15394d342c04Schristos #define _USE_STD_STAT 1
15404d342c04Schristos 
1541d16b7486Schristos /* For 64-bit time_t on 32-bit mingw. */
1542d16b7486Schristos /* #undef __MINGW_USE_VC2005_COMPAT */
1543d16b7486Schristos 
15444d342c04Schristos /* Define to 1 if the system <stdint.h> predates C++11. */
15454d342c04Schristos /* #undef __STDC_CONSTANT_MACROS */
15464d342c04Schristos 
15474d342c04Schristos /* Define to 1 if the system <stdint.h> predates C++11. */
15484d342c04Schristos /* #undef __STDC_LIMIT_MACROS */
15494d342c04Schristos 
1550d16b7486Schristos /* Define to 1 if C does not support variable-length arrays, and if the
1551d16b7486Schristos    compiler does not already define this. */
1552d16b7486Schristos /* #undef __STDC_NO_VLA__ */
1553d16b7486Schristos 
15544d342c04Schristos /* The _GL_ASYNC_SAFE marker should be attached to functions that are
15554d342c04Schristos    signal handlers (for signals other than SIGABRT, SIGPIPE) or can be
15564d342c04Schristos    invoked from such signal handlers.  Such functions have some restrictions:
15574d342c04Schristos      * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
15584d342c04Schristos        or should be listed as async-signal-safe in POSIX
15594d342c04Schristos        <https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
15604d342c04Schristos        section 2.4.3.  Note that malloc(), sprintf(), and fwrite(), in
15614d342c04Schristos        particular, are NOT async-signal-safe.
15624d342c04Schristos      * All memory locations (variables and struct fields) that these functions
15634d342c04Schristos        access must be marked 'volatile'.  This holds for both read and write
15644d342c04Schristos        accesses.  Otherwise the compiler might optimize away stores to and
15654d342c04Schristos        reads from such locations that occur in the program, depending on its
15664d342c04Schristos        data flow analysis.  For example, when the program contains a loop
15674d342c04Schristos        that is intended to inspect a variable set from within a signal handler
15684d342c04Schristos            while (!signal_occurred)
15694d342c04Schristos              ;
15704d342c04Schristos        the compiler is allowed to transform this into an endless loop if the
15714d342c04Schristos        variable 'signal_occurred' is not declared 'volatile'.
15724d342c04Schristos    Additionally, recall that:
15734d342c04Schristos      * A signal handler should not modify errno (except if it is a handler
15744d342c04Schristos        for a fatal signal and ends by raising the same signal again, thus
15754d342c04Schristos        provoking the termination of the process).  If it invokes a function
15764d342c04Schristos        that may clobber errno, it needs to save and restore the value of
15774d342c04Schristos        errno.  */
15784d342c04Schristos #define _GL_ASYNC_SAFE
15794d342c04Schristos 
15804d342c04Schristos 
15814d342c04Schristos /* Attributes.  */
1582d16b7486Schristos #if (defined __has_attribute \
1583d16b7486Schristos      && (!defined __clang_minor__ \
1584d16b7486Schristos          || (defined __apple_build_version__ \
1585d16b7486Schristos              ? 6000000 <= __apple_build_version__ \
1586d16b7486Schristos              : 3 < __clang_major__ + (5 <= __clang_minor__))))
15874d342c04Schristos # define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)
15884d342c04Schristos #else
15894d342c04Schristos # define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr
15904d342c04Schristos # define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)
15914d342c04Schristos # define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)
15924d342c04Schristos # define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3)
15934d342c04Schristos # define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3)
15944d342c04Schristos # define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95)
15954d342c04Schristos # define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1)
1596d16b7486Schristos # define _GL_ATTR_diagnose_if 0
15974d342c04Schristos # define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3)
15984d342c04Schristos # define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1)
15994d342c04Schristos # define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0)
16004d342c04Schristos # define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7)
16014d342c04Schristos # define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6)
1602d16b7486Schristos # define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0)
16034d342c04Schristos # ifdef _ICC
16044d342c04Schristos #  define _GL_ATTR_may_alias 0
16054d342c04Schristos # else
16064d342c04Schristos #  define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3)
16074d342c04Schristos # endif
16084d342c04Schristos # define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)
16094d342c04Schristos # define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3)
16104d342c04Schristos # define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)
16114d342c04Schristos # define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)
16124d342c04Schristos # define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)
16134d342c04Schristos # define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96)
16144d342c04Schristos # define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)
16154d342c04Schristos # define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0)
16164d342c04Schristos # define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)
16174d342c04Schristos # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
16184d342c04Schristos #endif
16194d342c04Schristos 
1620d16b7486Schristos #ifdef __has_c_attribute
1621d16b7486Schristos # if ((defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710 \
1622d16b7486Schristos       && _GL_GNUC_PREREQ (4, 6))
1623d16b7486Schristos #  pragma GCC diagnostic ignored "-Wpedantic"
1624d16b7486Schristos # endif
1625d16b7486Schristos # define _GL_HAS_C_ATTRIBUTE(attr) __has_c_attribute (__##attr##__)
1626d16b7486Schristos #else
1627d16b7486Schristos # define _GL_HAS_C_ATTRIBUTE(attr) 0
1628d16b7486Schristos #endif
16294d342c04Schristos 
1630d16b7486Schristos 
1631d16b7486Schristos /* _GL_ATTRIBUTE_ALLOC_SIZE ((N)) declares that the Nth argument of the function
1632d16b7486Schristos    is the size of the returned memory block.
1633d16b7486Schristos    _GL_ATTRIBUTE_ALLOC_SIZE ((M, N)) declares that the Mth argument multiplied
1634d16b7486Schristos    by the Nth argument of the function is the size of the returned memory block.
1635d16b7486Schristos  */
1636d16b7486Schristos /* Applies to: function, pointer to function, function types.  */
16374d342c04Schristos #if _GL_HAS_ATTRIBUTE (alloc_size)
16384d342c04Schristos # define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args))
16394d342c04Schristos #else
16404d342c04Schristos # define _GL_ATTRIBUTE_ALLOC_SIZE(args)
16414d342c04Schristos #endif
16424d342c04Schristos 
1643d16b7486Schristos /* _GL_ATTRIBUTE_ALWAYS_INLINE tells that the compiler should always inline the
1644d16b7486Schristos    function and report an error if it cannot do so.  */
1645d16b7486Schristos /* Applies to: function.  */
16464d342c04Schristos #if _GL_HAS_ATTRIBUTE (always_inline)
16474d342c04Schristos # define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__))
16484d342c04Schristos #else
16494d342c04Schristos # define _GL_ATTRIBUTE_ALWAYS_INLINE
16504d342c04Schristos #endif
16514d342c04Schristos 
1652d16b7486Schristos /* _GL_ATTRIBUTE_ARTIFICIAL declares that the function is not important to show
1653d16b7486Schristos     in stack traces when debugging.  The compiler should omit the function from
1654d16b7486Schristos     stack traces.  */
1655d16b7486Schristos /* Applies to: function.  */
16564d342c04Schristos #if _GL_HAS_ATTRIBUTE (artificial)
16574d342c04Schristos # define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__))
16584d342c04Schristos #else
16594d342c04Schristos # define _GL_ATTRIBUTE_ARTIFICIAL
16604d342c04Schristos #endif
16614d342c04Schristos 
1662d16b7486Schristos /* _GL_ATTRIBUTE_COLD declares that the function is rarely executed.  */
1663d16b7486Schristos /* Applies to: functions.  */
16644d342c04Schristos /* Avoid __attribute__ ((cold)) on MinGW; see thread starting at
1665d16b7486Schristos    <https://lists.gnu.org/r/emacs-devel/2019-04/msg01152.html>.
1666d16b7486Schristos    Also, Oracle Studio 12.6 requires 'cold' not '__cold__'.  */
16674d342c04Schristos #if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__
1668d16b7486Schristos # ifndef __SUNPRO_C
16694d342c04Schristos #  define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__))
16704d342c04Schristos # else
1671d16b7486Schristos #  define _GL_ATTRIBUTE_COLD __attribute__ ((cold))
1672d16b7486Schristos # endif
1673d16b7486Schristos #else
16744d342c04Schristos # define _GL_ATTRIBUTE_COLD
16754d342c04Schristos #endif
16764d342c04Schristos 
1677d16b7486Schristos /* _GL_ATTRIBUTE_CONST declares that it is OK for a compiler to omit duplicate
1678d16b7486Schristos    calls to the function with the same arguments.
1679d16b7486Schristos    This attribute is safe for a function that neither depends on nor affects
1680d16b7486Schristos    observable state, and always returns exactly once - e.g., does not loop
1681d16b7486Schristos    forever, and does not call longjmp.
1682d16b7486Schristos    (This attribute is stricter than _GL_ATTRIBUTE_PURE.)  */
1683d16b7486Schristos /* Applies to: functions.  */
16844d342c04Schristos #if _GL_HAS_ATTRIBUTE (const)
16854d342c04Schristos # define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
16864d342c04Schristos #else
16874d342c04Schristos # define _GL_ATTRIBUTE_CONST
16884d342c04Schristos #endif
16894d342c04Schristos 
1690d16b7486Schristos /* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers
1691d16b7486Schristos    that can be freed by passing them as the Ith argument to the
1692d16b7486Schristos    function F.
1693d16b7486Schristos    _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that
1694d16b7486Schristos    can be freed via 'free'; it can be used only after declaring 'free'.  */
1695d16b7486Schristos /* Applies to: functions.  Cannot be used on inline functions.  */
1696d16b7486Schristos /* Disable on Solaris to avoid GDB PR build/29791.  */
1697d16b7486Schristos #if _GL_GNUC_PREREQ (11, 0) && !(defined(__sun__) && defined(__svr4__))
1698d16b7486Schristos # define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i)))
1699d16b7486Schristos #else
1700d16b7486Schristos # define _GL_ATTRIBUTE_DEALLOC(f, i)
1701d16b7486Schristos #endif
1702d16b7486Schristos /* If gnulib's <string.h> or <wchar.h> has already defined this macro, continue
1703d16b7486Schristos    to use this earlier definition, since <stdlib.h> may not have been included
1704d16b7486Schristos    yet.  */
1705d16b7486Schristos #ifndef _GL_ATTRIBUTE_DEALLOC_FREE
1706d16b7486Schristos # define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1)
1707d16b7486Schristos #endif
1708d16b7486Schristos 
1709d16b7486Schristos /* _GL_ATTRIBUTE_DEPRECATED: Declares that an entity is deprecated.
1710d16b7486Schristos    The compiler may warn if the entity is used.  */
1711d16b7486Schristos /* Applies to:
1712d16b7486Schristos      - function, variable,
1713d16b7486Schristos      - struct, union, struct/union member,
1714d16b7486Schristos      - enumeration, enumeration item,
1715d16b7486Schristos      - typedef,
1716d16b7486Schristos    in C++ also: namespace, class, template specialization.  */
1717d16b7486Schristos #if _GL_HAS_C_ATTRIBUTE (deprecated)
17184d342c04Schristos # define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
17194d342c04Schristos #elif _GL_HAS_ATTRIBUTE (deprecated)
17204d342c04Schristos # define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__))
17214d342c04Schristos #else
17224d342c04Schristos # define _GL_ATTRIBUTE_DEPRECATED
17234d342c04Schristos #endif
17244d342c04Schristos 
1725d16b7486Schristos /* _GL_ATTRIBUTE_ERROR(msg) requests an error if a function is called and
1726d16b7486Schristos    the function call is not optimized away.
1727d16b7486Schristos    _GL_ATTRIBUTE_WARNING(msg) requests a warning if a function is called and
1728d16b7486Schristos    the function call is not optimized away.  */
1729d16b7486Schristos /* Applies to: functions.  */
17304d342c04Schristos #if _GL_HAS_ATTRIBUTE (error)
17314d342c04Schristos # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg)))
17324d342c04Schristos # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg)))
1733d16b7486Schristos #elif _GL_HAS_ATTRIBUTE (diagnose_if)
1734d16b7486Schristos # define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error")))
1735d16b7486Schristos # define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning")))
17364d342c04Schristos #else
17374d342c04Schristos # define _GL_ATTRIBUTE_ERROR(msg)
17384d342c04Schristos # define _GL_ATTRIBUTE_WARNING(msg)
17394d342c04Schristos #endif
17404d342c04Schristos 
1741d16b7486Schristos /* _GL_ATTRIBUTE_EXTERNALLY_VISIBLE declares that the entity should remain
1742d16b7486Schristos    visible to debuggers etc., even with '-fwhole-program'.  */
1743d16b7486Schristos /* Applies to: functions, variables.  */
17444d342c04Schristos #if _GL_HAS_ATTRIBUTE (externally_visible)
17454d342c04Schristos # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible))
17464d342c04Schristos #else
17474d342c04Schristos # define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE
17484d342c04Schristos #endif
17494d342c04Schristos 
1750d16b7486Schristos /* _GL_ATTRIBUTE_FALLTHROUGH declares that it is not a programming mistake if
1751d16b7486Schristos    the control flow falls through to the immediately following 'case' or
1752d16b7486Schristos    'default' label.  The compiler should not warn in this case.  */
1753d16b7486Schristos /* Applies to: Empty statement (;), inside a 'switch' statement.  */
1754d16b7486Schristos /* Always expands to something.  */
1755d16b7486Schristos #if _GL_HAS_C_ATTRIBUTE (fallthrough)
17564d342c04Schristos # define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
17574d342c04Schristos #elif _GL_HAS_ATTRIBUTE (fallthrough)
17584d342c04Schristos # define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__))
17594d342c04Schristos #else
17604d342c04Schristos # define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0)
17614d342c04Schristos #endif
17624d342c04Schristos 
1763d16b7486Schristos /* _GL_ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK))
1764d16b7486Schristos    declares that the STRING-INDEXth function argument is a format string of
1765d16b7486Schristos    style ARCHETYPE, which is one of:
1766d16b7486Schristos      printf, gnu_printf
1767d16b7486Schristos      scanf, gnu_scanf,
1768d16b7486Schristos      strftime, gnu_strftime,
1769d16b7486Schristos      strfmon,
1770d16b7486Schristos    or the same thing prefixed and suffixed with '__'.
1771d16b7486Schristos    If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK
1772d16b7486Schristos    are suitable for the format string.  */
1773d16b7486Schristos /* Applies to: functions.  */
17744d342c04Schristos #if _GL_HAS_ATTRIBUTE (format)
17754d342c04Schristos # define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
17764d342c04Schristos #else
17774d342c04Schristos # define _GL_ATTRIBUTE_FORMAT(spec)
17784d342c04Schristos #endif
17794d342c04Schristos 
1780d16b7486Schristos /* _GL_ATTRIBUTE_LEAF declares that if the function is called from some other
1781d16b7486Schristos    compilation unit, it executes code from that unit only by return or by
1782d16b7486Schristos    exception handling.  This declaration lets the compiler optimize that unit
1783d16b7486Schristos    more aggressively.  */
1784d16b7486Schristos /* Applies to: functions.  */
17854d342c04Schristos #if _GL_HAS_ATTRIBUTE (leaf)
17864d342c04Schristos # define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__))
17874d342c04Schristos #else
17884d342c04Schristos # define _GL_ATTRIBUTE_LEAF
17894d342c04Schristos #endif
17904d342c04Schristos 
1791d16b7486Schristos /* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly
1792d16b7486Schristos    allocated memory.  */
1793d16b7486Schristos /* Applies to: functions.  */
17944d342c04Schristos #if _GL_HAS_ATTRIBUTE (malloc)
17954d342c04Schristos # define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
17964d342c04Schristos #else
17974d342c04Schristos # define _GL_ATTRIBUTE_MALLOC
17984d342c04Schristos #endif
17994d342c04Schristos 
1800d16b7486Schristos /* _GL_ATTRIBUTE_MAY_ALIAS declares that pointers to the type may point to the
1801d16b7486Schristos    same storage as pointers to other types.  Thus this declaration disables
1802d16b7486Schristos    strict aliasing optimization.  */
1803d16b7486Schristos /* Applies to: types.  */
1804d16b7486Schristos /* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK.  */
1805d16b7486Schristos #if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C
1806d16b7486Schristos # define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__))
1807d16b7486Schristos #else
1808d16b7486Schristos # define _GL_ATTRIBUTE_MAY_ALIAS
1809d16b7486Schristos #endif
1810d16b7486Schristos 
1811d16b7486Schristos /* _GL_ATTRIBUTE_MAYBE_UNUSED declares that it is not a programming mistake if
1812d16b7486Schristos    the entity is not used.  The compiler should not warn if the entity is not
1813d16b7486Schristos    used.  */
1814d16b7486Schristos /* Applies to:
1815d16b7486Schristos      - function, variable,
1816d16b7486Schristos      - struct, union, struct/union member,
1817d16b7486Schristos      - enumeration, enumeration item,
1818d16b7486Schristos      - typedef,
1819d16b7486Schristos    in C++ also: class.  */
1820d16b7486Schristos /* In C++ and C2x, this is spelled [[__maybe_unused__]].
1821d16b7486Schristos    GCC's syntax is __attribute__ ((__unused__)).
1822d16b7486Schristos    clang supports both syntaxes.  */
1823d16b7486Schristos #if _GL_HAS_C_ATTRIBUTE (maybe_unused)
1824d16b7486Schristos # define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
1825d16b7486Schristos #else
1826d16b7486Schristos # define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED
1827d16b7486Schristos #endif
1828d16b7486Schristos /* Alternative spelling of this macro, for convenience.  */
1829d16b7486Schristos #define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED
1830d16b7486Schristos /* Earlier spellings of this macro.  */
1831d16b7486Schristos #define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED
1832d16b7486Schristos 
1833d16b7486Schristos /* _GL_ATTRIBUTE_NODISCARD declares that the caller of the function should not
1834d16b7486Schristos    discard the return value.  The compiler may warn if the caller does not use
1835d16b7486Schristos    the return value, unless the caller uses something like ignore_value.  */
1836d16b7486Schristos /* Applies to: function, enumeration, class.  */
1837d16b7486Schristos #if _GL_HAS_C_ATTRIBUTE (nodiscard)
18384d342c04Schristos # define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
18394d342c04Schristos #elif _GL_HAS_ATTRIBUTE (warn_unused_result)
18404d342c04Schristos # define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__))
18414d342c04Schristos #else
18424d342c04Schristos # define _GL_ATTRIBUTE_NODISCARD
18434d342c04Schristos #endif
18444d342c04Schristos 
1845d16b7486Schristos /* _GL_ATTRIBUTE_NOINLINE tells that the compiler should not inline the
1846d16b7486Schristos    function.  */
1847d16b7486Schristos /* Applies to: functions.  */
18484d342c04Schristos #if _GL_HAS_ATTRIBUTE (noinline)
18494d342c04Schristos # define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__))
18504d342c04Schristos #else
18514d342c04Schristos # define _GL_ATTRIBUTE_NOINLINE
18524d342c04Schristos #endif
18534d342c04Schristos 
1854d16b7486Schristos /* _GL_ATTRIBUTE_NONNULL ((N1, N2,...)) declares that the arguments N1, N2,...
1855d16b7486Schristos    must not be NULL.
1856d16b7486Schristos    _GL_ATTRIBUTE_NONNULL () declares that all pointer arguments must not be
1857d16b7486Schristos    null.  */
1858d16b7486Schristos /* Applies to: functions.  */
18594d342c04Schristos #if _GL_HAS_ATTRIBUTE (nonnull)
18604d342c04Schristos # define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args))
18614d342c04Schristos #else
18624d342c04Schristos # define _GL_ATTRIBUTE_NONNULL(args)
18634d342c04Schristos #endif
18644d342c04Schristos 
1865d16b7486Schristos /* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is
1866d16b7486Schristos    not meant to be NUL-terminated.  */
1867d16b7486Schristos /* Applies to: struct/union members and variables that are arrays of element
1868d16b7486Schristos    type '[[un]signed] char'.  */
18694d342c04Schristos #if _GL_HAS_ATTRIBUTE (nonstring)
18704d342c04Schristos # define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
18714d342c04Schristos #else
18724d342c04Schristos # define _GL_ATTRIBUTE_NONSTRING
18734d342c04Schristos #endif
18744d342c04Schristos 
18754d342c04Schristos /* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead.  */
18764d342c04Schristos 
1877d16b7486Schristos /* _GL_ATTRIBUTE_NOTHROW declares that the function does not throw exceptions.
1878d16b7486Schristos  */
1879d16b7486Schristos /* Applies to: functions.  */
18804d342c04Schristos #if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus
18814d342c04Schristos # define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__))
18824d342c04Schristos #else
18834d342c04Schristos # define _GL_ATTRIBUTE_NOTHROW
18844d342c04Schristos #endif
18854d342c04Schristos 
1886d16b7486Schristos /* _GL_ATTRIBUTE_PACKED declares:
1887d16b7486Schristos    For struct members: The member has the smallest possible alignment.
1888d16b7486Schristos    For struct, union, class: All members have the smallest possible alignment,
1889d16b7486Schristos    minimizing the memory required.  */
1890d16b7486Schristos /* Applies to: struct members, struct, union,
1891d16b7486Schristos    in C++ also: class.  */
18924d342c04Schristos #if _GL_HAS_ATTRIBUTE (packed)
18934d342c04Schristos # define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__))
18944d342c04Schristos #else
18954d342c04Schristos # define _GL_ATTRIBUTE_PACKED
18964d342c04Schristos #endif
18974d342c04Schristos 
1898d16b7486Schristos /* _GL_ATTRIBUTE_PURE declares that It is OK for a compiler to omit duplicate
1899d16b7486Schristos    calls to the function with the same arguments if observable state is not
1900d16b7486Schristos    changed between calls.
1901d16b7486Schristos    This attribute is safe for a function that does not affect
1902d16b7486Schristos    observable state, and always returns exactly once.
1903d16b7486Schristos    (This attribute is looser than _GL_ATTRIBUTE_CONST.)  */
1904d16b7486Schristos /* Applies to: functions.  */
19054d342c04Schristos #if _GL_HAS_ATTRIBUTE (pure)
19064d342c04Schristos # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
19074d342c04Schristos #else
19084d342c04Schristos # define _GL_ATTRIBUTE_PURE
19094d342c04Schristos #endif
19104d342c04Schristos 
1911d16b7486Schristos /* _GL_ATTRIBUTE_RETURNS_NONNULL declares that the function's return value is
1912d16b7486Schristos    a non-NULL pointer.  */
1913d16b7486Schristos /* Applies to: functions.  */
19144d342c04Schristos #if _GL_HAS_ATTRIBUTE (returns_nonnull)
19154d342c04Schristos # define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__))
19164d342c04Schristos #else
19174d342c04Schristos # define _GL_ATTRIBUTE_RETURNS_NONNULL
19184d342c04Schristos #endif
19194d342c04Schristos 
1920d16b7486Schristos /* _GL_ATTRIBUTE_SENTINEL(pos) declares that the variadic function expects a
1921d16b7486Schristos    trailing NULL argument.
1922d16b7486Schristos    _GL_ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99).
1923d16b7486Schristos    _GL_ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL.  */
1924d16b7486Schristos /* Applies to: functions.  */
19254d342c04Schristos #if _GL_HAS_ATTRIBUTE (sentinel)
19264d342c04Schristos # define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos))
19274d342c04Schristos #else
19284d342c04Schristos # define _GL_ATTRIBUTE_SENTINEL(pos)
19294d342c04Schristos #endif
19304d342c04Schristos 
1931d16b7486Schristos /* A helper macro.  Don't use it directly.  */
1932d16b7486Schristos #if _GL_HAS_ATTRIBUTE (unused)
1933d16b7486Schristos # define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
1934d16b7486Schristos #else
1935d16b7486Schristos # define _GL_ATTRIBUTE_UNUSED
1936d16b7486Schristos #endif
19374d342c04Schristos 
1938d16b7486Schristos 
1939d16b7486Schristos /* _GL_UNUSED_LABEL; declares that it is not a programming mistake if the
1940d16b7486Schristos    immediately preceding label is not used.  The compiler should not warn
1941d16b7486Schristos    if the label is not used.  */
1942d16b7486Schristos /* Applies to: label (both in C and C++).  */
1943d16b7486Schristos /* Note that g++ < 4.5 does not support the '__attribute__ ((__unused__)) ;'
1944d16b7486Schristos    syntax.  But clang does.  */
1945d16b7486Schristos #if !(defined __cplusplus && !_GL_GNUC_PREREQ (4, 5)) || defined __clang__
1946d16b7486Schristos # define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED
19474d342c04Schristos #else
19484d342c04Schristos # define _GL_UNUSED_LABEL
19494d342c04Schristos #endif
19504d342c04Schristos 
19514d342c04Schristos 
19524d342c04Schristos /* Define to `int' if <sys/types.h> doesn't define. */
19534d342c04Schristos /* #undef gid_t */
19544d342c04Schristos 
19554d342c04Schristos /* Define to `__inline__' or `__inline' if that's what the C compiler
19564d342c04Schristos    calls it, or to nothing if 'inline' is not supported under any name.  */
19574d342c04Schristos #ifndef __cplusplus
19584d342c04Schristos /* #undef inline */
19594d342c04Schristos #endif
19604d342c04Schristos 
19614d342c04Schristos /* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
19624d342c04Schristos    the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
19634d342c04Schristos    earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
19644d342c04Schristos    __APPLE__ && __MACH__ test for Mac OS X.
19654d342c04Schristos    __APPLE_CC__ tests for the Apple compiler and its version.
19664d342c04Schristos    __STDC_VERSION__ tests for the C99 mode.  */
19674d342c04Schristos #if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
19684d342c04Schristos # define __GNUC_STDC_INLINE__ 1
19694d342c04Schristos #endif
19704d342c04Schristos 
19714d342c04Schristos /* Define to a type if <wchar.h> does not define. */
19724d342c04Schristos /* #undef mbstate_t */
19734d342c04Schristos 
1974d16b7486Schristos /* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where
1975d16b7486Schristos    n1 and n2 are expressions without side effects, that evaluate to real
1976d16b7486Schristos    numbers (excluding NaN).
1977d16b7486Schristos    It returns
1978d16b7486Schristos      1  if n1 > n2
1979d16b7486Schristos      0  if n1 == n2
1980d16b7486Schristos      -1 if n1 < n2
1981d16b7486Schristos    The naïve code   (n1 > n2 ? 1 : n1 < n2 ? -1 : 0)  produces a conditional
1982d16b7486Schristos    jump with nearly all GCC versions up to GCC 10.
1983d16b7486Schristos    This variant     (n1 < n2 ? -1 : n1 > n2)  produces a conditional with many
1984d16b7486Schristos    GCC versions up to GCC 9.
1985d16b7486Schristos    The better code  (n1 > n2) - (n1 < n2)  from Hacker's Delight § 2-9
1986d16b7486Schristos    avoids conditional jumps in all GCC versions >= 3.4.  */
1987d16b7486Schristos #define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2)))
1988d16b7486Schristos 
1989d16b7486Schristos 
19904d342c04Schristos /* Define to `int' if <sys/types.h> does not define. */
19914d342c04Schristos /* #undef mode_t */
19924d342c04Schristos 
19934d342c04Schristos /* Define to the type of st_nlink in struct stat, or a supertype. */
19944d342c04Schristos /* #undef nlink_t */
19954d342c04Schristos 
1996d16b7486Schristos /* Define as a signed integer type capable of holding a process identifier. */
19974d342c04Schristos /* #undef pid_t */
19984d342c04Schristos 
19994d342c04Schristos /* Define to the equivalent of the C99 'restrict' keyword, or to
20004d342c04Schristos    nothing if this is not supported.  Do not define if restrict is
2001d16b7486Schristos    supported only directly.  */
2002d16b7486Schristos #define restrict __restrict__
20034d342c04Schristos /* Work around a bug in older versions of Sun C++, which did not
20044d342c04Schristos    #define __restrict__ or support _Restrict or __restrict__
20054d342c04Schristos    even though the corresponding Sun C compiler ended up with
20064d342c04Schristos    "#define restrict _Restrict" or "#define restrict __restrict__"
20074d342c04Schristos    in the previous line.  This workaround can be removed once
20084d342c04Schristos    we assume Oracle Developer Studio 12.5 (2016) or later.  */
20094d342c04Schristos #if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__
20104d342c04Schristos # define _Restrict
20114d342c04Schristos # define __restrict__
20124d342c04Schristos #endif
20134d342c04Schristos 
20144d342c04Schristos /* Define to `unsigned int' if <sys/types.h> does not define. */
20154d342c04Schristos /* #undef size_t */
20164d342c04Schristos 
20174d342c04Schristos /* type to use in place of socklen_t if not defined */
20184d342c04Schristos /* #undef socklen_t */
20194d342c04Schristos 
20204d342c04Schristos /* Define as a signed type of the same size as size_t. */
20214d342c04Schristos /* #undef ssize_t */
20224d342c04Schristos 
20234d342c04Schristos /* Define to `int' if <sys/types.h> doesn't define. */
20244d342c04Schristos /* #undef uid_t */
2025