summaryrefslogtreecommitdiff
path: root/config.h.in
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff.email>2026-03-08 17:28:33 +0100
committerJörg Frings-Fürst <debian@jff.email>2026-03-08 17:28:33 +0100
commit5f59a34ab747dde8ede7357f3431bf06bd6002fe (patch)
tree056a4477fd870d454d5be5868cddab829a47f4d2 /config.h.in
parent27dae84ed92f1ef0300263091972338d12e78348 (diff)
New upstream version 1.4.2upstream/1.4.2upstream
Diffstat (limited to 'config.h.in')
-rw-r--r--config.h.in132
1 files changed, 85 insertions, 47 deletions
diff --git a/config.h.in b/config.h.in
index 95253425..cc277415 100644
--- a/config.h.in
+++ b/config.h.in
@@ -475,8 +475,8 @@
/* Define to 1 when the gnulib module setsockopt should be tested. */
#undef GNULIB_TEST_SETSOCKOPT
-/* Define to 1 when the gnulib module signbit should be tested. */
-#undef GNULIB_TEST_SIGNBIT
+/* Define to 1 when the gnulib module signbit-no-cxx should be tested. */
+#undef GNULIB_TEST_SIGNBIT_NO_CXX
/* Define to 1 when the gnulib module sigprocmask should be tested. */
#undef GNULIB_TEST_SIGPROCMASK
@@ -505,6 +505,9 @@
/* Define to 1 when the gnulib module strncat should be tested. */
#undef GNULIB_TEST_STRNCAT
+/* Define to 1 when the gnulib module strncpy should be tested. */
+#undef GNULIB_TEST_STRNCPY
+
/* Define to 1 when the gnulib module strstr should be tested. */
#undef GNULIB_TEST_STRSTR
@@ -868,6 +871,9 @@
*/
#undef HAVE_DECL___ARGV
+/* Define to 1 if dladdr exists and is defined in libc. */
+#undef HAVE_DLADDR_IN_LIBC
+
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
@@ -1008,7 +1014,7 @@
/* Define to 1 if malloc (0) returns nonnull. */
#undef HAVE_MALLOC_0_NONNULL
-/* Define if malloc, realloc, and calloc set errno on allocation failure. */
+/* Define if malloc and calloc set errno on allocation failure. */
#undef HAVE_MALLOC_POSIX
/* Define to 1 if malloc-like functions do not allocate objects larger than
@@ -1114,6 +1120,9 @@
/* Define to 1 if realloc (..., 0) returns nonnull. */
#undef HAVE_REALLOC_0_NONNULL
+/* Define if realloc sets errno on allocation failure. */
+#undef HAVE_REALLOC_POSIX
+
/* Define to 1 if 'long double' and 'double' have the same representation. */
#undef HAVE_SAME_LONG_DOUBLE_AS_DOUBLE
@@ -1265,6 +1274,9 @@
/* Define to 1 if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
+/* Define to 1 if you have the <sys/process.h> header file. */
+#undef HAVE_SYS_PROCESS_H
+
/* Define to 1 if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
@@ -1328,6 +1340,9 @@
/* Define if you have a global __progname variable */
#undef HAVE_VAR___PROGNAME
+/* Define to 1 if you have the 'vasprintf' function. */
+#undef HAVE_VASPRINTF
+
/* Define to 1 or 0, depending whether the compiler supports simple visibility
declarations. */
#undef HAVE_VISIBILITY
@@ -1427,7 +1442,7 @@
if isdigit is mistakenly implemented via a static inline function,
a program containing an extern inline function that calls isdigit
may not work since C99 through C23 prohibit extern inline functions
- from calling static functions (ISO C 23 section 6.7.5.(2)).
+ from calling static functions (ISO C 23 § 6.7.5 ¶ 3)).
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:
@@ -2385,22 +2400,25 @@
#endif
/* _GL_ATTRIBUTE_CONST declares:
- It is OK for a compiler to move calls to the function and to omit
- calls to the function if another call has the same arguments or the
- result is not used.
- This attribute is safe for a function that neither depends on
- nor affects state, and always returns exactly once -
+ It is OK for a compiler to move a call, or omit a duplicate call
+ and reuse a cached return value, even if the state changes between calls.
+ It is also OK to omit a call if the result is not used.
+ This attribute is safe if the function does not change observable state,
+ returns a value determined solely by its arguments' values
+ without examining state, and always returns exactly once -
e.g., does not raise an exception, call longjmp, or loop forever.
(This attribute is stricter than _GL_ATTRIBUTE_PURE because the
- function cannot observe state. It is stricter than
- _GL_ATTRIBUTE_UNSEQUENCED because the function must return exactly
- once and cannot depend on state addressed by its arguments.) */
+ function cannot observe state. Unlike _GL_ATTRIBUTE_UNSEQUENCED
+ the function must return exactly once and cannot access state
+ addressed by its pointer arguments or that happens to have the same
+ value for all calls to the function, but the function is allowed to
+ return a pointer to storage that can be modified later. */
/* Applies to: functions. */
#ifndef _GL_ATTRIBUTE_CONST
# if _GL_HAS_ATTRIBUTE (const)
# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__))
# else
-# define _GL_ATTRIBUTE_CONST _GL_ATTRIBUTE_UNSEQUENCED
+# define _GL_ATTRIBUTE_CONST
# endif
#endif
@@ -2561,7 +2579,9 @@
/* _GL_ATTRIBUTE_MAYBE_UNUSED declares that it is not a programming mistake if
the entity is not used. The compiler should not warn if the entity is not
- used. */
+ used. However, 'int _GL_UNNAMED (i)' is preferable to
+ '_GL_ATTRIBUTE_MAYBE_UNUSED int i' when parameter I is unused
+ regardless of preprocessor macro settings. */
/* Applies to:
- function, variable,
- struct, union, struct/union member,
@@ -2715,39 +2735,40 @@
#endif
/* _GL_ATTRIBUTE_PURE declares:
- It is OK for a compiler to move calls to the function and to omit
- calls to the function if another call has the same arguments or the
- result is not used, and if observable state is the same.
- This attribute is safe for a function that does not affect observable state
- and always returns exactly once.
+ It is OK for a compiler to move a call, or omit a duplicate call
+ and reuse a cached return value, if observable state is the same.
+ It is also OK to omit a call if the return value is not used.
+ This attribute is safe if the function does not change observable state,
+ returns a value determined solely by its arguments's values
+ together with observable state, and always returns exactly once.
(This attribute is looser than _GL_ATTRIBUTE_CONST because the function
- can depend on observable state. It is stricter than
- _GL_ATTRIBUTE_REPRODUCIBLE because the function must return exactly
- once and cannot affect state addressed by its arguments.) */
+ can depend on observable state.
+ Unlike _GL_ATTRIBUTE_REPRODUCIBLE the function must return exactly
+ once and cannot change state addressed by its arguments, but the
+ function can return a pointer to storage whose contents change later.) */
/* Applies to: functions. */
#ifndef _GL_ATTRIBUTE_PURE
# if _GL_HAS_ATTRIBUTE (pure)
# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__))
# else
-# define _GL_ATTRIBUTE_PURE _GL_ATTRIBUTE_REPRODUCIBLE
+# define _GL_ATTRIBUTE_PURE
# endif
#endif
/* _GL_ATTRIBUTE_REPRODUCIBLE declares:
- It is OK for a compiler to move calls to the function and to omit duplicate
- calls to the function with the same arguments, so long as the state
- addressed by its arguments is the same and is updated in time for
- the rest of the program.
- This attribute is safe for a function that is effectless and idempotent; see
- ISO C 23 § 6.7.12.7 for a definition of these terms.
+ It is OK for a compiler to move a call, or omit a duplicate call
+ and reuse a cached value returned either directly or indirectly via
+ a pointer, if other observable state is the same;
+ however, pointer arguments cannot alias.
+ This attribute is safe for a function that is effectless and idempotent;
+ see ISO C 23 § 6.7.13.8 for a definition of these terms.
(This attribute is looser than _GL_ATTRIBUTE_UNSEQUENCED because
- the function need not be stateless and idempotent. It is looser
- than _GL_ATTRIBUTE_PURE because the function need not return
- exactly once and can affect state addressed by its arguments.)
+ the function need not be stateless or independent.
+ Unlike _GL_ATTRIBUTE_PURE the function need not return exactly once
+ and can change state addressed by its pointer arguments, but the
+ function cannot return a pointer to storage whose contents change later.)
See also <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2956.htm> and
- <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>. */
+ <https://stackoverflow.com/questions/76847905/>. */
/* Applies to: functions, pointer to functions, function types. */
#ifndef _GL_ATTRIBUTE_REPRODUCIBLE
/* This may be revisited when gcc and clang support [[reproducible]] or possibly
@@ -2787,20 +2808,22 @@
#endif
/* _GL_ATTRIBUTE_UNSEQUENCED declares:
- It is OK for a compiler to move calls to the function and to omit duplicate
- calls to the function with the same arguments, so long as the state
- addressed by its arguments is the same.
+ It is OK for a compiler to move a call, or omit a duplicate call
+ and reuse a cached value returned either directly or indirectly via
+ a pointer, if the state addressed by its pointer arguments is the same;
+ however, pointer arguments cannot alias.
This attribute is safe for a function that is effectless, idempotent,
- stateless, and independent; see ISO C 23 § 6.7.12.7 for a definition of
+ stateless, and independent; see ISO C 23 § 6.7.13.8 for a definition of
these terms.
(This attribute is stricter than _GL_ATTRIBUTE_REPRODUCIBLE because
- the function must be stateless and independent. It is looser than
- _GL_ATTRIBUTE_CONST because the function need not return exactly
- once and can depend on state addressed by its arguments.)
+ the function must be stateless and independent. Unlike
+ _GL_ATTRIBUTE_CONST the function need not return exactly once, and
+ can depend on state accessed via its pointer arguments or that
+ happens to have the same value for all calls to the function, but
+ the function cannot return a pointer to storage whose contents
+ change later.)
See also <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2956.htm> and
- <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>. */
+ <https://stackoverflow.com/questions/76847905/>. */
/* Applies to: functions, pointer to functions, function types. */
#ifndef _GL_ATTRIBUTE_UNSEQUENCED
/* This may be revisited when gcc and clang support [[unsequenced]] or possibly
@@ -2839,6 +2862,21 @@
# endif
#endif
+/* _GL_UNNAMED (ID) is the "name" of an unnamed function parameter.
+ Each of the function's unnamed parameters should have a unique "name".
+ The "name" cannot be used. This ports both to C17 and earlier, which
+ lack unnamed parameters, and to C++ and later C, which have them. */
+/* Applies to:
+ - function parameters. */
+#ifndef _GL_UNNAMED
+# if ((defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 202311 \
+ && !defined __cplusplus)
+# define _GL_UNNAMED(id) unnamed_##id _GL_ATTRIBUTE_UNUSED
+# else
+# define _GL_UNNAMED(id)
+# endif
+#endif
+
/* The following attributes enable detection of multithread-safety problems
and resource leaks at compile-time, by clang ≥ 15, when the warning option
-Wthread-safety is enabled. For usage, see
@@ -2992,8 +3030,8 @@
References:
ISO C23 (latest free draft
- <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf>)
- sections 6.5.3.4, 6.7.5, 7.15.
+ <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf>)
+ sections 6.2.8, 6.7.6.
C++11 (latest free draft
<https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf>)
section 18.10. */