diff options
Diffstat (limited to 'config.h.in')
| -rw-r--r-- | config.h.in | 430 | 
1 files changed, 186 insertions, 244 deletions
| diff --git a/config.h.in b/config.h.in index 43513c8d..95253425 100644 --- a/config.h.in +++ b/config.h.in @@ -1,5 +1,11 @@  /* config.h.in.  Generated from configure.ac by autoheader.  */ +#if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wtrailing-whitespace" +#endif + +  /* Witness that <config.h> has been included.  */  #define _GL_CONFIG_H_INCLUDED 1 @@ -48,22 +54,9 @@  /* Define as the word index where to find the sign of 'double'. */  #undef DBL_SIGNBIT_WORD -/* the name of the file descriptor member of DIR */ -#undef DIR_FD_MEMBER_NAME - -#ifdef DIR_FD_MEMBER_NAME -# define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME) -#else -# define DIR_TO_FD(Dir_p) -1 -#endif - -  /* Define to 1 if // is a file system root distinct from /. */  #undef DOUBLE_SLASH_IS_DISTINCT_ROOT -/* Define if struct dirent has a member d_ino that actually works. */ -#undef D_INO_IN_DIRENT -  /* Define to 1 if the package shall run at any location in the file system. */  #undef ENABLE_RELOCATABLE @@ -111,14 +104,6 @@  #undef GNULIB_CONNECT  /* Define to a C preprocessor expression that evaluates to 1 or 0, depending -   whether the gnulib module fdopendir shall be considered present. */ -#undef GNULIB_FDOPENDIR - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending -   whether the gnulib module fd-safer-flag shall be considered present. */ -#undef GNULIB_FD_SAFER_FLAG - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending     whether the gnulib module fscanf shall be considered present. */  #undef GNULIB_FSCANF @@ -127,14 +112,6 @@  #undef GNULIB_FSTAT  /* Define to a C preprocessor expression that evaluates to 1 or 0, depending -   whether the gnulib module fstatat shall be considered present. */ -#undef GNULIB_FSTATAT - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending -   whether the gnulib module getcwd shall be considered present. */ -#undef GNULIB_GETCWD - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending     whether the gnulib module ioctl shall be considered present. */  #undef GNULIB_IOCTL @@ -147,6 +124,14 @@  #undef GNULIB_LISTEN  /* Define to a C preprocessor expression that evaluates to 1 or 0, depending +   whether the gnulib module localeconv shall be considered present. */ +#undef GNULIB_LOCALECONV + +/* Define to the directory where to find the localizations of the translation +   domain 'gnulib', as a C string. */ +#undef GNULIB_LOCALEDIR + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending     whether the gnulib module lock shall be considered present. */  #undef GNULIB_LOCK @@ -158,10 +143,6 @@     whether the gnulib module msvc-nothrow shall be considered present. */  #undef GNULIB_MSVC_NOTHROW -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending -   whether the gnulib module openat shall be considered present. */ -#undef GNULIB_OPENAT -  /* Define to 1 if printf and friends should be labeled with attribute     "__gnu_printf__" instead of "__printf__" */  #undef GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU @@ -264,45 +245,27 @@  /* Define to 1 when the gnulib module calloc-posix should be tested. */  #undef GNULIB_TEST_CALLOC_POSIX -/* Define to 1 when the gnulib module chdir should be tested. */ -#undef GNULIB_TEST_CHDIR -  /* Define to 1 when the gnulib module cloexec should be tested. */  #undef GNULIB_TEST_CLOEXEC  /* Define to 1 when the gnulib module close should be tested. */  #undef GNULIB_TEST_CLOSE -/* Define to 1 when the gnulib module closedir should be tested. */ -#undef GNULIB_TEST_CLOSEDIR -  /* Define to 1 when the gnulib module connect should be tested. */  #undef GNULIB_TEST_CONNECT -/* Define to 1 when the gnulib module dirfd should be tested. */ -#undef GNULIB_TEST_DIRFD - -/* Define to 1 when the gnulib module dup should be tested. */ -#undef GNULIB_TEST_DUP -  /* Define to 1 when the gnulib module dup2 should be tested. */  #undef GNULIB_TEST_DUP2  /* Define to 1 when the gnulib module environ should be tested. */  #undef GNULIB_TEST_ENVIRON -/* Define to 1 when the gnulib module fchdir should be tested. */ -#undef GNULIB_TEST_FCHDIR -  /* Define to 1 when the gnulib module fcntl should be tested. */  #undef GNULIB_TEST_FCNTL  /* Define to 1 when the gnulib module fdopen should be tested. */  #undef GNULIB_TEST_FDOPEN -/* Define to 1 when the gnulib module fdopendir should be tested. */ -#undef GNULIB_TEST_FDOPENDIR -  /* Define to 1 when the gnulib module fgetc should be tested. */  #undef GNULIB_TEST_FGETC @@ -336,9 +299,6 @@  /* Define to 1 when the gnulib module fstat should be tested. */  #undef GNULIB_TEST_FSTAT -/* Define to 1 when the gnulib module fstatat should be tested. */ -#undef GNULIB_TEST_FSTATAT -  /* Define to 1 when the gnulib module ftruncate should be tested. */  #undef GNULIB_TEST_FTRUNCATE @@ -357,6 +317,10 @@  /* Define to 1 when the gnulib module getdtablesize should be tested. */  #undef GNULIB_TEST_GETDTABLESIZE +/* Define to 1 when the gnulib module getlocalename_l-unsafe should be tested. +   */ +#undef GNULIB_TEST_GETLOCALENAME_L_UNSAFE +  /* Define to 1 when the gnulib module getprogname should be tested. */  #undef GNULIB_TEST_GETPROGNAME @@ -381,6 +345,12 @@  /* Define to 1 when the gnulib module listen should be tested. */  #undef GNULIB_TEST_LISTEN +/* Define to 1 when the gnulib module localeconv should be tested. */ +#undef GNULIB_TEST_LOCALECONV + +/* Define to 1 when the gnulib module localename-environ should be tested. */ +#undef GNULIB_TEST_LOCALENAME_ENVIRON +  /* Define to 1 when the gnulib module localename-unsafe should be tested. */  #undef GNULIB_TEST_LOCALENAME_UNSAFE @@ -414,11 +384,8 @@  /* Define to 1 when the gnulib module memchr should be tested. */  #undef GNULIB_TEST_MEMCHR -/* Define to 1 when the gnulib module mempcpy should be tested. */ -#undef GNULIB_TEST_MEMPCPY - -/* Define to 1 when the gnulib module memrchr should be tested. */ -#undef GNULIB_TEST_MEMRCHR +/* Define to 1 when the gnulib module mkfifo should be tested. */ +#undef GNULIB_TEST_MKFIFO  /* Define to 1 when the gnulib module nanosleep should be tested. */  #undef GNULIB_TEST_NANOSLEEP @@ -426,12 +393,6 @@  /* Define to 1 when the gnulib module open should be tested. */  #undef GNULIB_TEST_OPEN -/* Define to 1 when the gnulib module openat should be tested. */ -#undef GNULIB_TEST_OPENAT - -/* Define to 1 when the gnulib module opendir should be tested. */ -#undef GNULIB_TEST_OPENDIR -  /* Define to 1 when the gnulib module perror should be tested. */  #undef GNULIB_TEST_PERROR @@ -487,21 +448,12 @@  /* Define to 1 when the gnulib module random_r should be tested. */  #undef GNULIB_TEST_RANDOM_R -/* Define to 1 when the gnulib module readdir should be tested. */ -#undef GNULIB_TEST_READDIR -  /* Define to 1 when the gnulib module reallocarray should be tested. */  #undef GNULIB_TEST_REALLOCARRAY -/* Define to 1 when the gnulib module realloc-gnu should be tested. */ -#undef GNULIB_TEST_REALLOC_GNU -  /* Define to 1 when the gnulib module realloc-posix should be tested. */  #undef GNULIB_TEST_REALLOC_POSIX -/* Define to 1 when the gnulib module rewinddir should be tested. */ -#undef GNULIB_TEST_REWINDDIR -  /* Define to 1 when the gnulib module scanf should be tested. */  #undef GNULIB_TEST_SCANF @@ -541,21 +493,27 @@  /* Define to 1 when the gnulib module stpcpy should be tested. */  #undef GNULIB_TEST_STPCPY -/* Define to 1 when the gnulib module strdup should be tested. */ -#undef GNULIB_TEST_STRDUP -  /* Define to 1 when the gnulib module strerror should be tested. */  #undef GNULIB_TEST_STRERROR  /* Define to 1 when the gnulib module strerror_r should be tested. */  #undef GNULIB_TEST_STRERROR_R +/* Define to 1 when the gnulib module stringeq should be tested. */ +#undef GNULIB_TEST_STRINGEQ +  /* Define to 1 when the gnulib module strncat should be tested. */  #undef GNULIB_TEST_STRNCAT  /* Define to 1 when the gnulib module strstr should be tested. */  #undef GNULIB_TEST_STRSTR +/* Define to 1 when the gnulib module str_endswith should be tested. */ +#undef GNULIB_TEST_STR_ENDSWITH + +/* Define to 1 when the gnulib module str_startswith should be tested. */ +#undef GNULIB_TEST_STR_STARTSWITH +  /* Define to 1 when the gnulib module symlink should be tested. */  #undef GNULIB_TEST_SYMLINK @@ -751,9 +709,6 @@     the CoreFoundation framework. */  #undef HAVE_CFPREFERENCESCOPYAPPVALUE -/* Define to 1 if you have the 'closedir' function. */ -#undef HAVE_CLOSEDIR -  /* Define if the copysignf function is declared in <math.h> and available in     libc. */  #undef HAVE_COPYSIGNF_IN_LIBC @@ -797,10 +752,6 @@     don't. */  #undef HAVE_DECL_COPYSIGNL -/* Define to 1 if you have the declaration of 'dirfd', and to 0 if you don't. -   */ -#undef HAVE_DECL_DIRFD -  /* Define to 1 if you have the declaration of 'ecvt', and to 0 if you don't.     */  #undef HAVE_DECL_ECVT @@ -809,10 +760,6 @@     don't. */  #undef HAVE_DECL_EXECVPE -/* Define to 1 if you have the declaration of 'fchdir', and to 0 if you don't. -   */ -#undef HAVE_DECL_FCHDIR -  /* Define to 1 if you have the declaration of 'fcloseall', and to 0 if you     don't. */  #undef HAVE_DECL_FCLOSEALL @@ -821,18 +768,10 @@     */  #undef HAVE_DECL_FCVT -/* Define to 1 if you have the declaration of 'fdopendir', and to 0 if you -   don't. */ -#undef HAVE_DECL_FDOPENDIR -  /* Define to 1 if you have the declaration of 'gcvt', and to 0 if you don't.     */  #undef HAVE_DECL_GCVT -/* Define to 1 if you have the declaration of 'getcwd', and to 0 if you don't. -   */ -#undef HAVE_DECL_GETCWD -  /* Define to 1 if you have the declaration of 'getdtablesize', and to 0 if you     don't. */  #undef HAVE_DECL_GETDTABLESIZE @@ -861,9 +800,9 @@     don't. */  #undef HAVE_DECL_MBSINIT -/* Define to 1 if you have the declaration of 'memrchr', and to 0 if you -   don't. */ -#undef HAVE_DECL_MEMRCHR +/* Define to 1 if you have the declaration of 'memeq', and to 0 if you don't. +   */ +#undef HAVE_DECL_MEMEQ  /* Define to 1 if you have the declaration of 'program_invocation_name', and     to 0 if you don't. */ @@ -889,9 +828,9 @@     */  #undef HAVE_DECL_SLEEP -/* Define to 1 if you have the declaration of 'strdup', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'streq', and to 0 if you don't.     */ -#undef HAVE_DECL_STRDUP +#undef HAVE_DECL_STREQ  /* Define to 1 if you have the declaration of 'strerror_r', and to 0 if you     don't. */ @@ -913,10 +852,6 @@     */  #undef HAVE_DECL_WCSDUP -/* Define to 1 if you have the declaration of 'wctob', and to 0 if you don't. -   */ -#undef HAVE_DECL_WCTOB -  /* Define to 1 if you have the declaration of 'wcwidth', and to 0 if you     don't. */  #undef HAVE_DECL_WCWIDTH @@ -933,12 +868,6 @@     */  #undef HAVE_DECL___ARGV -/* Define to 1 if you have the <dirent.h> header file. */ -#undef HAVE_DIRENT_H - -/* Define to 1 if you have the 'dirfd' function. */ -#undef HAVE_DIRFD -  /* Define to 1 if you have the <dlfcn.h> header file. */  #undef HAVE_DLFCN_H @@ -958,15 +887,9 @@     OpenBSD. */  #undef HAVE_FAKE_LOCALES -/* Define to 1 if you have the 'fchdir' function. */ -#undef HAVE_FCHDIR -  /* Define to 1 if you have the 'fcntl' function. */  #undef HAVE_FCNTL -/* Define to 1 if you have the 'fdopendir' function. */ -#undef HAVE_FDOPENDIR -  /* Define to 1 if you have the <features.h> header file. */  #undef HAVE_FEATURES_H @@ -982,16 +905,9 @@  /* Define if the frexp function is available in libc. */  #undef HAVE_FREXP_IN_LIBC -/* Define to 1 if you have the 'fstatat' function. */ -#undef HAVE_FSTATAT -  /* Define to 1 if you have the `ftruncate' function. */  #undef HAVE_FTRUNCATE -/* Define to 1 if getcwd works, but with shorter paths than is generally -   tested with the replacement. */ -#undef HAVE_GETCWD_SHORTER -  /* Define to 1 if you have the 'getdtablesize' function. */  #undef HAVE_GETDTABLESIZE @@ -1089,12 +1005,15 @@  /* Define to 1 if you have the 'lstat' function. */  #undef HAVE_LSTAT +/* Define to 1 if malloc (0) returns nonnull. */ +#undef HAVE_MALLOC_0_NONNULL +  /* Define if malloc, realloc, and calloc set errno on allocation failure. */  #undef HAVE_MALLOC_POSIX -/* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including -   config.h and <sys/mman.h>. */ -#undef HAVE_MAP_ANONYMOUS +/* Define to 1 if malloc-like functions do not allocate objects larger than +   PTRDIFF_MAX bytes. */ +#undef HAVE_MALLOC_PTRDIFF  /* Define to 1 if you have the <math.h> header file. */  #undef HAVE_MATH_H @@ -1111,16 +1030,6 @@  /* Define to 1 if you have the `mbtowc' function. */  #undef HAVE_MBTOWC -/* Define to 1 if you have the `mempcpy' function. */ -#undef HAVE_MEMPCPY - -/* Define to 1 if you have the 'memrchr' function. */ -#undef HAVE_MEMRCHR - -/* Define to 1 if getcwd minimally works, that is, its result can be trusted -   when it succeeds. */ -#undef HAVE_MINIMALLY_WORKING_GETCWD -  /* Define to 1 if you have the <minix/config.h> header file. */  #undef HAVE_MINIX_CONFIG_H @@ -1130,6 +1039,9 @@  /* Define to 1 if <sys/param.h> defines the MIN and MAX macros. */  #undef HAVE_MINMAX_IN_SYS_PARAM_H +/* Define to 1 if you have a 'mkfifo' function. */ +#undef HAVE_MKFIFO +  /* Define to 1 if you have the 'mprotect' function. */  #undef HAVE_MPROTECT @@ -1153,16 +1065,6 @@  /* Define to 1 if you have the `nl_langinfo' function. */  #undef HAVE_NL_LANGINFO -/* Define to 1 if you have the 'openat' function. */ -#undef HAVE_OPENAT - -/* Define to 1 if you have the 'opendir' function. */ -#undef HAVE_OPENDIR - -/* Define to 1 if getcwd works, except it sometimes fails when it shouldn't, -   setting errno to ERANGE, ENAMETOOLONG, or ENOENT. */ -#undef HAVE_PARTLY_WORKING_GETCWD -  /* Define to 1 if you have the 'pipe' function. */  #undef HAVE_PIPE @@ -1206,14 +1108,11 @@  /* Define to 1 if you have the 'random_r' function. */  #undef HAVE_RANDOM_R -/* Define to 1 if you have the 'readdir' function. */ -#undef HAVE_READDIR -  /* Define to 1 if you have the `reallocarray' function. */  #undef HAVE_REALLOCARRAY -/* Define to 1 if you have the 'rewinddir' function. */ -#undef HAVE_REWINDDIR +/* Define to 1 if realloc (..., 0) returns nonnull. */ +#undef HAVE_REALLOC_0_NONNULL  /* Define to 1 if 'long double' and 'double' have the same representation. */  #undef HAVE_SAME_LONG_DOUBLE_AS_DOUBLE @@ -1312,6 +1211,12 @@  /* Define to 1 if you have the 'strnlen' function. */  #undef HAVE_STRNLEN +/* Define to 1 if 'decimal_point' is a member of 'struct lconv'. */ +#undef HAVE_STRUCT_LCONV_DECIMAL_POINT + +/* Define to 1 if 'int_p_cs_precedes' is a member of 'struct lconv'. */ +#undef HAVE_STRUCT_LCONV_INT_P_CS_PRECEDES +  /* Define to 1 if the system has the type 'struct random_data'. */  #undef HAVE_STRUCT_RANDOM_DATA @@ -1449,6 +1354,9 @@     symbols. */  #undef HAVE_WEAK_SYMBOLS +/* Define to 1 if <locale.h> defines the _locale_t type. */ +#undef HAVE_WINDOWS_LOCALE_T +  /* Define to 1 if you have the <winsock2.h> header file. */  #undef HAVE_WINSOCK2_H @@ -1458,17 +1366,16 @@  /* Define if the c32rtomb function basically works. */  #undef HAVE_WORKING_C32RTOMB -/* Define to 1 if fstatat (..., 0) works. For example, it does not work in AIX -   7.1. */ -#undef HAVE_WORKING_FSTATAT_ZERO_FLAG -  /* Define if the mbrtoc32 function basically works. */  #undef HAVE_WORKING_MBRTOC32 -/* Define to 1 if O_NOATIME works. */ +/* Define to 1 if O_DIRECTORY works, 0 otherwise. */ +#undef HAVE_WORKING_O_DIRECTORY + +/* Define to 1 if O_NOATIME works, 0 otherwise. */  #undef HAVE_WORKING_O_NOATIME -/* Define to 1 if O_NOFOLLOW works. */ +/* Define to 1 if O_NOFOLLOW works, 0 otherwise. */  #undef HAVE_WORKING_O_NOFOLLOW  /* Define if the uselocale function exists and may safely be called. */ @@ -1494,7 +1401,7 @@  #elif HAVE___BUILTIN_EXPECT == 2  # include <builtins.h>  #endif -     +  /* Define to 1 if you have the `__fseterr' function. */  #undef HAVE___FSETERR @@ -1519,9 +1426,11 @@     functions or macros in standard C headers like <ctype.h>.  For example,     if isdigit is mistakenly implemented via a static inline function,     a program containing an extern inline function that calls isdigit -   may not work since the C standard prohibits extern inline functions -   from calling static functions (ISO C 99 section 6.7.4.(3). -   This bug is known to occur on: +   may not work since C99 through C23 prohibit extern inline functions +   from calling static functions (ISO C 23 section 6.7.5.(2)). +   Although a future C standard will likely relax this restriction +   <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3622.txt>, +   respect it for now.  This bug is known to occur on:       OS X 10.8 and earlier; see:       https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html @@ -1588,8 +1497,8 @@     suppress bogus "no previous prototype for 'FOO'"     and "no previous declaration for 'FOO'" diagnostics,     when FOO is an inline function in the header; see -   <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and -   <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>.  */ +   <https://gcc.gnu.org/PR54113> and +   <https://gcc.gnu.org/PR63877>.  */  #if __GNUC__ == 4 && 6 <= __GNUC_MINOR__  # if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__  #  define _GL_INLINE_HEADER_CONST_PRAGMA @@ -1649,9 +1558,6 @@  /* Define to the sub-directory where libtool stores uninstalled libraries. */  #undef LT_OBJDIR -/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */ -#undef MALLOC_0_IS_NONNULL -  /* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */  #undef MAP_ANONYMOUS @@ -1678,9 +1584,6 @@  /* Define if the mbrtowc function has the NULL pwc argument bug. */  #undef MBRTOWC_NULL_ARG1_BUG -/* Define if the mbrtowc function has the NULL string argument bug. */ -#undef MBRTOWC_NULL_ARG2_BUG -  /* Define if the mbrtowc function does not return 0 for a NUL character. */  #undef MBRTOWC_NUL_RETVAL_BUG @@ -1709,6 +1612,9 @@     6.2.1. */  #undef MIPS_NAN2008_LONG_DOUBLE +/* Define to 1 if mkfifo does not reject trailing slash */ +#undef MKFIFO_TRAILING_SLASH_BUG +  /* Define to 1 on musl libc. */  #undef MUSL_LIBC @@ -1748,6 +1654,10 @@     */  #undef NEED_PRINTF_FLAG_GROUPING +/* Define if the vasnprintf implementation needs special code for the ' flag, +   for integer directives only. */ +#undef NEED_PRINTF_FLAG_GROUPING_INT +  /* Define if the vasnprintf implementation needs special code for the '-'     flag. */  #undef NEED_PRINTF_FLAG_LEFTADJUST @@ -1772,6 +1682,9 @@     large precisions without arbitrary bounds. */  #undef NEED_PRINTF_UNBOUNDED_PRECISION +/* Define to 1 if realloc should abort upon undefined behaviour. */ +#undef NEED_SANITIZED_REALLOC +  /* Define to 1 to enable general improvements of setlocale. */  #undef NEED_SETLOCALE_IMPROVED @@ -1832,24 +1745,14 @@  /* Define to 1 if pthread_sigmask may return 0 and have no effect. */  #undef PTHREAD_SIGMASK_INEFFECTIVE -/* Define to 1 if pthread_sigmask() unblocks signals incorrectly. */ -#undef PTHREAD_SIGMASK_UNBLOCK_BUG -  /* Define to l, ll, u, ul, ull, etc., as suitable for constants of type     'ptrdiff_t'. */  #undef PTRDIFF_T_SUFFIX -/* Define to 1 if gnulib's fchdir() replacement is used. */ -#undef REPLACE_FCHDIR -  /* Define to 1 if stat needs help when passed a file name with a trailing     slash */  #undef REPLACE_FUNC_STAT_FILE -/* Define to 1 if open() should work around the inability to open a directory. -   */ -#undef REPLACE_OPEN_DIRECTORY -  /* Define to 1 if strerror(0) does not return a message implying success. */  #undef REPLACE_STRERROR_0 @@ -2090,33 +1993,25 @@  /* Define so that AIX headers are more compatible with GNU/Linux. */  #undef _LINUX_SOURCE_COMPAT -/* The _Noreturn keyword of C11.  */ +/* The _Noreturn keyword of C11. +   Do not use [[noreturn]], because with it the syntax +     extern _Noreturn void func (...); +   would not be valid; such a declaration would be valid only with 'extern' +   and '_Noreturn' swapped, or without the 'extern' keyword.  However, some +   AIX system header files and several gnulib header files use precisely +   this syntax with 'extern'.  So even though C23 deprecates _Noreturn, +   it is currently more portable to prefer it to [[noreturn]]. + +   Also, do not try to work around LLVM bug 59792 (clang 15 or earlier). +   This rare bug can be worked around by compiling with 'clang -D_Noreturn=', +   though the workaround may generate many false-alarm warnings.  */  #ifndef _Noreturn -# if (defined __cplusplus \ -      && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \ -          || (defined _MSC_VER && 1900 <= _MSC_VER)) \ -      && 0) -    /* [[noreturn]] is not practically usable, because with it the syntax -         extern _Noreturn void func (...); -       would not be valid; such a declaration would only be valid with 'extern' -       and '_Noreturn' swapped, or without the 'extern' keyword.  However, some -       AIX system header files and several gnulib header files use precisely -       this syntax with 'extern'.  */ -#  define _Noreturn [[noreturn]] -# elif (defined __clang__ && __clang_major__ < 16 \ -        && defined _GL_WORK_AROUND_LLVM_BUG_59792) -   /* Compile with -D_GL_WORK_AROUND_LLVM_BUG_59792 to work around -      that rare LLVM bug, though you may get many false-alarm warnings.  */ -#  define _Noreturn -# elif ((!defined __cplusplus || defined __clang__) \ -        && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ -            || (!defined __STRICT_ANSI__ \ -                && (_GL_GNUC_PREREQ (4, 7) \ -                    || (defined __apple_build_version__ \ -                        ? 6000000 <= __apple_build_version__ \ -                        : 3 < __clang_major__ + (5 <= __clang_minor__)))))) +# if ((!defined __cplusplus || defined __clang__) \ +      && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0)))     /* _Noreturn works as-is.  */  # elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C +   /* Prefer __attribute__ ((__noreturn__)) to plain _Noreturn even if the +      latter works, as 'gcc -std=gnu99 -Wpedantic' warns about _Noreturn.  */  #  define _Noreturn __attribute__ ((__noreturn__))  # elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)  #  define _Noreturn __declspec (noreturn) @@ -2126,10 +2021,6 @@  #endif -/* Define to 1 in order to get the POSIX compatible declarations of socket -   functions. */ -#undef _POSIX_PII_SOCKET -  /* Number of bits in time_t, on hosts where this is settable. */  #undef _TIME_BITS @@ -2190,6 +2081,9 @@  #  define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__)  # else  #  define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr +/* The following lines list the first GCC version that supports the attribute. +   Although the lines are not used in GCC 5 and later (as GCC 5 introduced +   __has_attribute support), list GCC versions 5+ anyway for completeness.  */  #  define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3)  #  define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2)  #  define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3) @@ -2210,14 +2104,15 @@  #  endif  #  define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1)  #  define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3) +#  define _GL_ATTR_nonnull_if_nonzero _GL_GNUC_PREREQ (15, 1)  #  define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0)  #  define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3)  #  define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7)  #  define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96) -#  define _GL_ATTR_reproducible 0 /* not yet supported, as of GCC 14 */ +#  define _GL_ATTR_reproducible _GL_GNUC_PREREQ (15, 1)  #  define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9)  #  define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0) -#  define _GL_ATTR_unsequenced 0 /* not yet supported, as of GCC 14 */ +#  define _GL_ATTR_unsequenced _GL_GNUC_PREREQ (15, 1)  #  define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7)  #  define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)  # endif @@ -2245,7 +2140,7 @@        ======================================================================        This gives a syntax error          - in C mode with gcc -          <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108796>, and +          <https://gcc.gnu.org/PR108796>, and          - in C++ mode with clang++ version < 16, and          - in C++ mode, inside extern "C" {}, still in newer clang++ versions            <https://github.com/llvm/llvm-project/issues/101990>. @@ -2527,7 +2422,7 @@     yet.  */  #ifndef _GL_ATTRIBUTE_DEALLOC_FREE  # if defined __cplusplus && defined __GNUC__ && !defined __clang__ -/* Work around GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108231> */ +/* Work around GCC bug <https://gcc.gnu.org/PR108231> */  #  define _GL_ATTRIBUTE_DEALLOC_FREE \       _GL_ATTRIBUTE_DEALLOC ((void (*) (void *)) free, 1)  # else @@ -2753,6 +2648,17 @@  # endif  #endif +/* _GL_ATTRIBUTE_NONNULL_IF_NONZERO (NP, NI) declares that the argument NP +   (a pointer) must not be NULL if the argument NI (an integer) is != 0.  */ +/* Applies to: functions.  */ +#ifndef _GL_ATTRIBUTE_NONNULL_IF_NONZERO +# if _GL_HAS_ATTRIBUTE (nonnull_if_nonzero) +#  define _GL_ATTRIBUTE_NONNULL_IF_NONZERO(np, ni) __attribute__ ((__nonnull_if_nonzero__ (np, ni))) +# else +#  define _GL_ATTRIBUTE_NONNULL_IF_NONZERO(np, ni) +# endif +#endif +  /* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is     not meant to be NUL-terminated.  */  /* Applies to: struct/union members and variables that are arrays of element @@ -2839,7 +2745,9 @@     than _GL_ATTRIBUTE_PURE because the function need not return     exactly once and can affect state addressed by its arguments.)     See also <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2956.htm> and -   <https://stackoverflow.com/questions/76847905/>.  */ +   <https://stackoverflow.com/questions/76847905/>. +   ATTENTION! Efforts are underway to change the meaning of this attribute. +   See <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3424.htm>.  */  /* Applies to: functions, pointer to functions, function types.  */  #ifndef _GL_ATTRIBUTE_REPRODUCIBLE  /* This may be revisited when gcc and clang support [[reproducible]] or possibly @@ -2890,7 +2798,9 @@     _GL_ATTRIBUTE_CONST because the function need not return exactly     once and can depend on state addressed by its arguments.)     See also <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2956.htm> and -   <https://stackoverflow.com/questions/76847905/>.  */ +   <https://stackoverflow.com/questions/76847905/>. +   ATTENTION! Efforts are underway to change the meaning of this attribute. +   See <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3424.htm>.  */  /* Applies to: functions, pointer to functions, function types.  */  #ifndef _GL_ATTRIBUTE_UNSEQUENCED  /* This may be revisited when gcc and clang support [[unsequenced]] or possibly @@ -2937,7 +2847,7 @@  # if __clang_major__ >= 15  #  define _GL_ATTRIBUTE_CAPABILITY_TYPE(concept) \       __attribute__ ((__capability__ (concept))) -#else +# else  #  define _GL_ATTRIBUTE_CAPABILITY_TYPE(concept)  # endif  #endif @@ -3005,8 +2915,8 @@       -1 if n1 < n2     The naïve code   (n1 > n2 ? 1 : n1 < n2 ? -1 : 0)  produces a conditional     jump with nearly all GCC versions up to GCC 10. -   This variant     (n1 < n2 ? -1 : n1 > n2)  produces a conditional with many -   GCC versions up to GCC 9. +   This variant     (n1 < n2 ? -1 : n1 > n2)  produces a conditional jump with +   many GCC versions up to GCC 9.     The better code  (n1 > n2) - (n1 < n2)  from Hacker's Delight § 2-9     avoids conditional jumps in all GCC versions >= 3.4.  */  #define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2))) @@ -3053,20 +2963,20 @@  #undef uid_t -  /* This definition is a duplicate of the one in unitypes.h. -     It is here so that we can cope with an older version of unitypes.h -     that does not contain this definition and that is pre-installed among -     the public header files.  */ -  # if defined __restrict \ -       || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \ -       || __clang_major__ >= 3 -  #  define _UC_RESTRICT __restrict -  # elif 199901L <= __STDC_VERSION__ || defined restrict -  #  define _UC_RESTRICT restrict -  # else -  #  define _UC_RESTRICT -  # endif -   +/* This definition is a duplicate of the one in unitypes.h. +   It is here so that we can cope with an older version of unitypes.h +   that does not contain this definition and that is pre-installed among +   the public header files.  */ +# if defined __restrict \ +     || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \ +     || __clang_major__ >= 3 +#  define _UC_RESTRICT __restrict +# elif 199901L <= __STDC_VERSION__ || defined restrict +#  define _UC_RESTRICT restrict +# else +#  define _UC_RESTRICT +# endif +  /* Define to an unsigned 32-bit type if <sys/types.h> lacks this type. */  #undef useconds_t @@ -3082,10 +2992,10 @@     References:     ISO C23 (latest free draft -   <http://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf>) +   <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf>)     sections 6.5.3.4, 6.7.5, 7.15.     C++11 (latest free draft -   <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf>) +   <https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf>)     section 18.10. */  /* alignof (TYPE), also known as _Alignof (TYPE), yields the alignment @@ -3103,12 +3013,14 @@     want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc.  */  /* GCC releases before GCC 4.9 had a bug in _Alignof.  See GCC bug 52023 -   <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52023>. -   clang versions < 8.0.0 have the same bug.  */ +   <https://gcc.gnu.org/PR52023>. +   clang versions < 8.0.0 have the same bug. +   IBM XL C V16.1.0 cc (non-clang) has the same bug.  */  #  if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \         || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \             && !defined __clang__) \ -       || (defined __clang__ && __clang_major__ < 8)) +       || (defined __clang__ && __clang_major__ < 8) \ +       || defined __xlC__)  #   undef/**/_Alignof  #   ifdef __cplusplus  #    if (201103 <= __cplusplus || defined _MSC_VER) @@ -3179,7 +3091,8 @@  #  if ((defined _Alignas \          && !(defined __cplusplus \               && (201103 <= __cplusplus || defined _MSC_VER))) \ -       || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) +       || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__ \ +           && !defined __xlC__))  #   define alignas _Alignas  #  endif  # endif @@ -3189,7 +3102,13 @@  # endif  #endif -#ifndef HAVE_C_BOOL +#if !(defined __cplusplus \ +      ? 1 \ +      : (defined __clang__ \ +         ? __STDC_VERSION__ >= 202000L && __clang_major__ >= 15 \ +         : (defined __GNUC__ \ +            ? __STDC_VERSION__ >= 202000L && __GNUC__ >= 13 \ +            : defined HAVE_C_BOOL)))  # if !defined __cplusplus && !defined __bool_true_false_are_defined  #  if HAVE_STDBOOL_H  #   include <stdbool.h> @@ -3206,19 +3125,42 @@  # endif  #endif -#if (!defined HAVE_C_STATIC_ASSERT && !defined assert \ +#if (!(defined __clang__ \ +       ? (defined __cplusplus \ +          ? __cplusplus >= 201703L \ +          : __STDC_VERSION__ >= 202000L && __clang_major__ >= 16 \ +            && !defined __sun) \ +       : (defined __GNUC__ \ +          ? (defined __cplusplus \ +             ? __cplusplus >= 201103L && __GNUG__ >= 6 \ +             : __STDC_VERSION__ >= 202000L && __GNUC__ >= 13 \ +               && !defined __sun) \ +          : defined HAVE_C_STATIC_ASSERT)) \ +     && !defined assert \       && (!defined __cplusplus \           || (__cpp_static_assert < 201411 \               && __GNUG__ < 6 && __clang_major__ < 6)))   #include <assert.h>   #undef/**/assert - #ifdef __sgi -  #undef/**/__ASSERT_H__ - #endif   /* Solaris 11.4 <assert.h> defines static_assert as a macro with 2 arguments. -    We need it also to be invocable with a single argument.  */ - #if defined __sun && (__STDC_VERSION__ - 0 >= 201112L) && !defined __cplusplus +    We need it also to be invocable with a single argument. +    Haiku 2022 <assert.h> does not define static_assert at all.  */ + #if (__STDC_VERSION__ - 0 >= 201112L) && !defined __cplusplus    #undef/**/static_assert    #define static_assert _Static_assert   #endif  #endif + +#if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ +# pragma GCC diagnostic pop +#endif + + + +/* The text domainname for Gnulib messages.  Ordinarily this is "gnulib", +   but packages that do their own translations of Gnulib can use something +   different by defining GNULIB_TEXT_DOMAIN in their config.h file.  */ +#ifndef GNULIB_TEXT_DOMAIN +# define GNULIB_TEXT_DOMAIN/**/"gnulib" +#endif + | 
