]> Savannah Git Hosting - gnulib.git/log
gnulib.git
3 years agosupersede: Fix test failure under QEMU user-mode for Linux/mips.
Bruno Haible [Mon, 30 Aug 2021 00:36:31 +0000 (02:36 +0200)]
supersede: Fix test failure under QEMU user-mode for Linux/mips.

* tests/test-supersede-open.h (test_open_supersede): Copy statbuf.st_dev
into a local variable of type dev_t.
* tests/test-supersede-fopen.h (test_fopen_supersede): Likewise.

3 years agospawn-pipe: Fix test failure when running under QEMU user-mode.
Bruno Haible [Mon, 30 Aug 2021 00:06:23 +0000 (02:06 +0200)]
spawn-pipe: Fix test failure when running under QEMU user-mode.

* tests/test-spawn-pipe-child.c: Include <stdbool.h>, <string.h>,
qemu.h.
(main): Under QEMU user-mode, allow fd 2 or fd 3 to be open.
* modules/spawn-pipe-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.

3 years agoexecute: Fix test failure when running under QEMU user-mode.
Bruno Haible [Mon, 30 Aug 2021 00:05:53 +0000 (02:05 +0200)]
execute: Fix test failure when running under QEMU user-mode.

* tests/test-execute-child.c: Include <stdbool.h>, qemu.h.
(main): Under QEMU user-mode, allow fd 3 to be open.
* modules/execute-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.

3 years agoposix_spawn_file_actions_addfchdir: Avoid test failure under QEMU.
Bruno Haible [Sun, 29 Aug 2021 23:56:46 +0000 (01:56 +0200)]
posix_spawn_file_actions_addfchdir: Avoid test failure under QEMU.

* tests/test-posix_spawn-fchdir.c: Include qemu.h.
(is_qemu): New variable.
(test): Under QEMU user-mode, don't expect that "pwd" produces the
result "/".
(main): Initialize is_qemu. Under QEMU user-mode, skip the relative file
name test.
* modules/posix_spawn_file_actions_addfchdir-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.

3 years agogetcwd tests: Avoid test failure when running under QEMU user-mode.
Bruno Haible [Sun, 29 Aug 2021 23:44:03 +0000 (01:44 +0200)]
getcwd tests: Avoid test failure when running under QEMU user-mode.

* modules/getcwd-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.
* tests/test-getcwd.c: Include qemu.h.
(test_long_name): Skip this test when running under QEMU user-mode.
(main): Consider return code 77 from test_long_name.

3 years agobase32, base64: treat negative sizes as overflows
Paul Eggert [Sun, 29 Aug 2021 19:58:49 +0000 (12:58 -0700)]
base32, base64: treat negative sizes as overflows

* lib/base64.c (base64_encode_alloc):
* lib/base32.c (base32_encode_alloc):
Treat negative sizes as overflows, for better compatibility
with previous API.

3 years agoexplicit_bzero test: Fix test failure due to GCC optimizations.
Bruno Haible [Sun, 29 Aug 2021 16:54:54 +0000 (18:54 +0200)]
explicit_bzero test: Fix test failure due to GCC optimizations.

* tests/test-explicit_bzero.c (do_secret_stuff): Use static variable
'last_stackbuf'.
(main): Use an 'if' to combine the two do_secret_stuff invocations.

3 years agodfa: port to non-gnulib
Paul Eggert [Sun, 29 Aug 2021 17:03:24 +0000 (10:03 -0700)]
dfa: port to non-gnulib

Suggested by Arnold Robbins in:
https://lists.gnu.org/r/bug-gnulib/2021-08/msg00181.html
* lib/dfa.h (_GL_ATTRIBUTE_DEALLOC) [!_GL_ATTRIBUTE_MALLOC]:
Add missing definition.

3 years agobase32, base64: fix broken tests
Paul Eggert [Sun, 29 Aug 2021 07:45:43 +0000 (00:45 -0700)]
base32, base64: fix broken tests

Problem reported by Bruno Haible in:
https://lists.gnu.org/r/bug-gnulib/2021-08/msg00170.html
* lib/base32.c, lib/base64.c: Do not include verify.h,
and omit all uses of ‘assume’.
* modules/base32, modules/base64 (Depends-on): Remove verify.
* tests/test-base32.c, tests/test-base64.c:
Don’t pass out-of-range values to allocator,
as converting them to idx_t relies on implementation-defined
behavior that could trap.

3 years agoialloc: relicense
Paul Eggert [Sun, 29 Aug 2021 07:27:10 +0000 (00:27 -0700)]
ialloc: relicense

* modules/ialloc (License): Change from LGPL to LGPLv2+.

3 years agofma: Fix compilation error on Linux/sh4.
Bruno Haible [Sun, 29 Aug 2021 00:05:05 +0000 (02:05 +0200)]
fma: Fix compilation error on Linux/sh4.

* lib/fma.c (FUNC): Don't test for FE_DOWNWARD or FE_UPWARD when these
rounding modes are not defined.

3 years agosigabbrev_np, sigdescr_np: Fix compilation error on Linux/alpha, part 2.
Bruno Haible [Sat, 28 Aug 2021 23:16:37 +0000 (01:16 +0200)]
sigabbrev_np, sigdescr_np: Fix compilation error on Linux/alpha, part 2.

* tests/test-sigabbrev_np.c (main): Fix syntax error.
* tests/test-sigdescr_np.c (main): Likewise.

3 years agoSkip some tests when running under QEMU user-mode.
Bruno Haible [Sat, 28 Aug 2021 23:03:29 +0000 (01:03 +0200)]
Skip some tests when running under QEMU user-mode.

* tests/qemu.h: New file.
* tests/test-get-rusage-as.c: Include qemu.h.
(main): Skip the test when running under QEMU.
* tests/test-get-rusage-data.c: Include qemu.h.
(main): Skip the test when running under QEMU.
* tests/test-printf-posix2.c: Include qemu.h.
(main): Return with code 77 when running under QEMU.
* tests/test-fprintf-posix2.c: Include qemu.h.
(main): Return with code 77 when running under QEMU.
* tests/test-fprintf-posix3.c: Include qemu.h.
(main): Return with code 79 when running under QEMU.
* tests/test-fprintf-posix3.sh: Skip the test when the return code was
79.
* tests/test-dprintf-posix2.c: Include qemu.h.
(main): Return with code 79 when running under QEMU. Use return code 80
instead of 78.
* tests/test-dprintf-posix2.sh: Skip the test when the return code was
79. Update for changed return code.
* modules/get-rusage-as-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.
* modules/get-rusage-data-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.
* modules/fprintf-posix-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.
* modules/dprintf-posix-tests (Files): Add qemu.h.
(Depends-on): Add stdbool.

3 years agosigabbrev_np, sigdescr_np: Fix compilation error on Linux/alpha.
Bruno Haible [Sat, 28 Aug 2021 17:39:05 +0000 (19:39 +0200)]
sigabbrev_np, sigdescr_np: Fix compilation error on Linux/alpha.

* lib/sigabbrev_np.c (sigabbrev_np): When SIGINFO and SIGPWR have the
same value, give precendence to SIGPWR.
* lib/sigdescr_np.c (sigdescr_np): Likewise.
* tests/test-sigabbrev_np.c (main): Likewise.
* tests/test-sigdescr_np.c (main): Likewise.

3 years agoexecle, execve, execvpe tests: Fix test failures under qemu user-mode.
Bruno Haible [Sat, 28 Aug 2021 17:15:38 +0000 (19:15 +0200)]
execle, execve, execvpe tests: Fix test failures under qemu user-mode.

* test-execle-main.c: Include <string.h>.
(get_environ_assignment, create_minimal_env): New functions.
(main): Call create_minimal_env.
* test-execve-main.c: Likewise.
* test-execvpe-main.c: Likewise.

3 years agobase32, base64: prefer signed to unsigned integers
Paul Eggert [Fri, 27 Aug 2021 22:25:42 +0000 (15:25 -0700)]
base32, base64: prefer signed to unsigned integers

* lib/base32.c, lib/base64.c: Include ialloc.h instad of stdlib.h.
Include intprops.h, verify.h.
* lib/base32.c (base32_encode, base32_encode_alloc, get_8, decode_8)
(base32_decode_ctx, base32_decode_alloc_ctx):
* lib/base32.h (struct base32_decode_context):
* lib/base64.c (base64_encode_fast, base64_encode)
(base64_encode_alloc, get_4, decode_4, base64_decode_ctx)
(base64_decode_alloc_ctx):
* lib/base64.h (struct base64_decode_context):
* tests/test-base32.c (main):
* tests/test-base64.c (main):
Prefer signed to unsigned integers.
* lib/base32.c (base32_encode_alloc):
* lib/base64.c (base64_encode_alloc):
Use simpler and more-direct check for overflow, removing a TODO.
* lib/base32.h, lib/base64.h: Include idx.h instead of stddef.h.
* modules/base32, modules/base64 (Depends-on): Add ialloc, verify.

3 years agoregex: also break glibc lib/regex.c link for now
Paul Eggert [Fri, 27 Aug 2021 19:01:26 +0000 (12:01 -0700)]
regex: also break glibc lib/regex.c link for now

3 years agoautoupdate
Karl Berry [Fri, 27 Aug 2021 16:16:36 +0000 (09:16 -0700)]
autoupdate

3 years agoregex: revert much of previous change
Paul Eggert [Fri, 27 Aug 2021 06:45:39 +0000 (23:45 -0700)]
regex: revert much of previous change

Use a more-conservative change that syncs closer with glibc,
and then merely marks regexec and __compat_regexec.

3 years agoregex: fix typo in previous patch
Paul Eggert [Thu, 26 Aug 2021 23:15:25 +0000 (16:15 -0700)]
regex: fix typo in previous patch

Fix typo in previous patch.  Somehow I managed to
omit the main point of the patch....

3 years agoregex: use C99-style array arg syntax
Paul Eggert [Thu, 26 Aug 2021 17:08:00 +0000 (10:08 -0700)]
regex: use C99-style array arg syntax

This should help with some static checking.
Derived from a suggestion by Martin Sebor in:
https://sourceware.org/pipermail/libc-alpha/2021-August/130336.html
This also ports recent and relevant Glibc changes to Gnulib
and prepares to copy back.
* lib/cdefs.h (__ARG_NELTS): New macro.
* lib/regex.c: Ignore -Wvla for the whole file.
* lib/regex.h (_ARG_NELTS_, _Attr_access_): New macros.
Ignore -Wvla when declaring regexec.
* lib/regex.h (re_compile_pattern, re_search, re_search_2)
(re_match, re_match_2, regcomp, regerror):
Use _Attr_access_ where that could help static checking.
* lib/regexec.c (regexec, __compat_regexec, re_copy_regs)
(re_search_internal, proceed_next_node, push_fail_stack)
(pop_fail_stack, set_regs, update_regs):
Use __ARG_NELTS for each array parameter whose size is another arg,
but which might be null.

3 years agoexecute tests: Fix test failure when libtool is in use.
Bruno Haible [Wed, 25 Aug 2021 10:43:56 +0000 (12:43 +0200)]
execute tests: Fix test failure when libtool is in use.

* modules/execute-tests (Makefile.am): Link test-execute-child without
using libtool.
* modules/spawn-pipe-tests (Makefile.am): Link test-spawn-pipe-child
without using libtool.
* modules/system-quote-tests (Makefile.am): Link test-system-quote-child
without using libtool.

3 years agodfa: prefer idx_t to ptrdiff_t for nonnegative
Paul Eggert [Wed, 25 Aug 2021 03:12:19 +0000 (20:12 -0700)]
dfa: prefer idx_t to ptrdiff_t for nonnegative

* lib/dfa.c (struct dfa, dfaexec_main, dfaexec_mb, dfaexec_sb)
(dfaexec_noop, dfaexec):
* lib/dfa.h (dfaparse, dfacomp, dfaexec):
Prefer idx_t to ptrdiff_t for counts, which should be nonnegative.
* lib/dfa.h: Include idx.h.

3 years agosnippet/unused-parameter: Mark unused module obsolete.
Bruno Haible [Mon, 23 Aug 2021 01:06:03 +0000 (03:06 +0200)]
snippet/unused-parameter: Mark unused module obsolete.

* modules/snippet/unused-parameter (Status, Notice): Mark as obsolete.

3 years agoMake generated .in.h files as standalone as possible.
Bruno Haible [Sun, 22 Aug 2021 21:54:40 +0000 (23:54 +0200)]
Make generated .in.h files as standalone as possible.

Reported by Jan Engelhardt <jengelh@inai.de>.

* lib/stdlib.in.h (_GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_DEALLOC_FREE,
_GL_ATTRIBUTE_MALLOC): Add fallback definitions.
* lib/dirent.in.h (_GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_MALLOC): Add
fallback definitions.
* lib/stdio.in.h (_GL_ATTRIBUTE_DEALLOC): Add fallback definition.
* lib/math.in.h (_GL_ATTRIBUTE_CONST): Add fallback definition.
* lib/pthread.in.h (_GL_ATTRIBUTE_PURE): Add fallback definition.
* lib/threads.in.h (_GL_ATTRIBUTE_PURE): Likewise.
* lib/uchar.in.h (_GL_ATTRIBUTE_PURE): Likewise.
* lib/string.in.h (_GL_ATTRIBUTE_PURE): Move definition, for consistency
with the other *.in.h files.
* lib/se-context.in.h (_GL_ATTRIBUTE_MAYBE_UNUSED): Add fallback
definition.
* lib/se-label.in.h (_GL_ATTRIBUTE_MAYBE_UNUSED): Likewise.
* lib/se-selinux.in.h (_GL_ATTRIBUTE_MAYBE_UNUSED): Likewise.
* lib/textstyle.in.h: Use _GL_ATTRIBUTE_MAYBE_UNUSED instead of
_GL_UNUSED.
(_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, _GL_ATTRIBUTE_MAYBE_UNUSED): Add
fallback definitions.

3 years agognulib-common.m4: Clarify logic behind _GL_UNUSED_LABEL.
Bruno Haible [Sun, 22 Aug 2021 21:40:41 +0000 (23:40 +0200)]
gnulib-common.m4: Clarify logic behind _GL_UNUSED_LABEL.

Reported by Paul Eggert.

* m4/gnulib-common.m4 (gl_COMMON_BODY): Add comment and write the
condition in a way that is close to the comment.

3 years agoc-stack: depend on inttypes, mempcpy
Paul Eggert [Sun, 22 Aug 2021 20:39:24 +0000 (13:39 -0700)]
c-stack: depend on inttypes, mempcpy

* modules/c-stack (Depends-on): Add inttypes, mempcpy.
mempcpy problem reported by Evan Miller in:
https://debbugs.gnu.org/50098#31

3 years agomountlist: Use recommended syntax for _GL_UNUSED_LABEL.
Bruno Haible [Sun, 22 Aug 2021 20:26:05 +0000 (22:26 +0200)]
mountlist: Use recommended syntax for _GL_UNUSED_LABEL.

* lib/mountlist.c (read_file_system_list): Add semicolon after
_GL_UNUSED_LABEL.

3 years agognulib-common.m4: Make _GL_UNUSED_LABEL effective for clang.
Bruno Haible [Sun, 22 Aug 2021 20:11:50 +0000 (22:11 +0200)]
gnulib-common.m4: Make _GL_UNUSED_LABEL effective for clang.

* m4/gnulib-common.m4 (gl_COMMON_BODY): Make _GL_UNUSED_LABEL use
_GL_ATTRIBUTE_UNUSED also for clang.

3 years agoOops, remove unintended file additions.
Bruno Haible [Sun, 22 Aug 2021 20:09:15 +0000 (22:09 +0200)]
Oops, remove unintended file additions.

3 years agognulib-common.m4: Use C2x [[maybe_unused]] when possible.
Bruno Haible [Sun, 22 Aug 2021 20:04:34 +0000 (22:04 +0200)]
gnulib-common.m4: Use C2x [[maybe_unused]] when possible.

* m4/gnulib-common.m4 (gl_COMMON_BODY): Define _GL_UNUSED as an alias of
_GL_ATTRIBUTE_MAYBE_UNUSED, not of _GL_ATTRIBUTE_UNUSED.
* lib/binary-io.h (__gl_setmode): Put _GL_UNUSED before, not after, the
declaration.
* lib/c-stack.c (null_action, segv_handler, overflow_handler,
c_stack_action): Likewise.
* lib/chown.c (chown): Likewise.
* lib/clean-temp-simple.c (cleanup_action): Likewise.
* lib/fts.c (dirent_inode_sort_may_be_useful, leaf_optimization,
fts_set): Likewise.
* lib/getgroups.c (getgroups): Likewise.
* lib/getopt.c (_getopt_initialize): Likewise.
* lib/getugroups.c (getugroups): Likewise.
* lib/localename.c (gl_locale_name_thread_unsafe, gl_locale_name_thread,
gl_locale_name_posix, gl_locale_name_environ): Likewise.
* lib/mkdir.c (rpl_mkdir): Likewise.
* lib/mkfifo.c (mkfifo): Likewise.
* lib/mkfifoat.c (mkfifoat): Likewise.
* lib/mknod.c (mknod): Likewise.
* lib/mknodat.c (mknodat): Likewise.
* lib/mountlist.c (me_remote): Likewise.
* lib/openpty.c (openpty): Likewise.
* lib/parse-datetime.y (yyerror): Likewise.
* lib/passfd.c (sendfd, recvfd): Likewise.
* lib/pthread-cond.c (pthread_condattr_destroy, pthread_cond_init,
pthread_cond_wait, pthread_cond_timedwait, pthread_cond_signal,
pthread_cond_broadcast, pthread_cond_destroy): Likewise.
* lib/pthread-mutex.c (pthread_mutexattr_destroy, pthread_mutex_init,
pthread_mutex_lock, pthread_mutex_trylock, pthread_mutex_timedlock,
pthread_mutex_unlock, pthread_mutex_destroy): Likewise.
* lib/pthread-rwlock.c (pthread_rwlockattr_destroy, pthread_rwlock_init,
pthread_rwlock_timedrdlock, pthread_rwlock_timedwrlock): Likewise.
* lib/pthread-spin.c (pthread_spin_init, pthread_spin_lock,
pthread_spin_trylock, pthread_spin_unlock, pthread_spin_destroy):
Likewise.
* lib/pthread-thread.c (pthread_attr_destroy): Likewise.
* lib/readlink.c (readlink): Likewise.
* lib/rename.c (rpl_rename): Likewise.
* lib/set-permissions.c (set_permissions): Likewise.
* lib/sockets.c (gl_sockets_startup): Likewise.
* lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime,
stat_time_normalize): Likewise.
* lib/strptime.c (__strptime_internal): Likewise.
* lib/strtod.c (LDEXP): Likewise.
* lib/symlink.c (symlink): Likewise.
* lib/symlinkat.c (symlinkat): Likewise.
* lib/tempname.c (try_dir, try_nocreate): Likewise.
* lib/textstyle.in.h (styled_ostream_begin_use_class,
styled_ostream_end_use_class, styled_ostream_get_hyperlink_ref,
styled_ostream_get_hyperlink_id, styled_ostream_set_hyperlink,
styled_ostream_flush_to_current_style, fd_ostream_create,
term_ostream_get_color, term_ostream_set_color,
term_ostream_get_bgcolor, term_ostream_set_bgcolor,
term_ostream_get_weight, term_ostream_set_weight,
term_ostream_get_posture, term_ostream_set_posture,
term_ostream_get_underline, term_ostream_set_underline,
term_ostream_get_hyperlink_ref, term_ostream_get_hyperlink_id,
term_ostream_set_hyperlink, term_ostream_create,
term_styled_ostream_create, html_styled_ostream_create,
handle_color_option, handle_style_option, style_file_prepare,
styled_ostream_create, libtextstyle_set_failure_exit_code): Likewise.
* lib/unicodeio.c (exit_failure_callback, fallback_failure_callback):
Likewise.
* lib/wait-process.c (cleanup_slaves_action): Likewise.
* tests/signature.h (SIGNATURE_CHECK2): Likewise.
* tests/test-areadlink.c (do_areadlink): Likewise.
* tests/test-areadlinkat.c (do_areadlinkat): Likewise.
* tests/test-ceilf-ieee.c (main): Likewise.
* tests/test-ceilf1.c (main): Likewise.
* tests/test-dirent.c (dir): Likewise.
* tests/test-fchownat.c (main): Likewise.
* tests/test-fdopendir.c (main): Likewise.
* tests/test-filenamecat.c (main): Likewise.
* tests/test-floor1.c (main): Likewise.
* tests/test-floorf-ieee.c (main): Likewise.
* tests/test-floorf1.c (main): Likewise.
* tests/test-fseeko.c (main): Likewise.
* tests/test-fstatat.c (main): Likewise.
* tests/test-ftello.c (main): Likewise.
* tests/test-getdomainname.c (main): Likewise.
* tests/test-getgroups.c (main): Likewise.
* tests/test-gethostname.c (main): Likewise.
* tests/test-math-c++.cc (OVERLOADED_CHECK): Likewise.
* tests/test-mkdirat.c (main): Likewise.
* tests/test-openat.c (main): Likewise.
* tests/test-parse-datetime.c (main): Likewise.
* tests/test-quotearg-simple.c (main): Likewise.
* tests/test-quotearg.c (main): Likewise.
* tests/test-sethostname2.c (main): Likewise.
* tests/test-unlinkat.c (main): Likewise.
* tests/test-version-etc.c (main): Likewise.
* tests/test-xalloc-die.c (main): Likewise.
* tests/test-xfprintf-posix.c (main): Likewise.
* tests/test-xprintf-posix.c (main): Likewise.
* tests/test-xvasprintf.c (main): Likewise.

3 years agognulib-common.m4: Document the gnulib-internal _GL_ATTRIBUTE_* macros.
Bruno Haible [Sun, 22 Aug 2021 19:58:31 +0000 (21:58 +0200)]
gnulib-common.m4: Document the gnulib-internal _GL_ATTRIBUTE_* macros.

* m4/gnulib-common.m4 (gl_COMMON_BODY): Add comments to the
_GL_ATTRIBUTE_* macros, based on lib/attribute.h.

3 years agodoc: fix order of stdlib functions
Bernhard Voelker [Sun, 22 Aug 2021 14:06:47 +0000 (16:06 +0200)]
doc: fix order of stdlib functions

* doc/gnulib.texi (node Glibc stdlib.h): Move mrand48_r after mkstemps.
Reported by Benno Schulenberg.

3 years agoc-stack: Test for libsigsegv once, not twice.
Bruno Haible [Sat, 21 Aug 2021 23:25:59 +0000 (01:25 +0200)]
c-stack: Test for libsigsegv once, not twice.

* m4/sigsegv.m4: New file, based on modules/sigsegv.
* modules/sigsegv (Files): Add it.
(configure.ac): Require gl_SIGSEGV. Test gl_sigsegv_uses_libsigsegv
instead of with_libsigsegv and gl_cv_lib_sigsegv.
* m4/c-stack.m4 (gl_C_STACK): Likewise.

3 years agorawmemchr: Fix use in relocatable-prog-wrapper (regression 2021-08-20).
Bruno Haible [Sat, 21 Aug 2021 22:32:40 +0000 (00:32 +0200)]
rawmemchr: Fix use in relocatable-prog-wrapper (regression 2021-08-20).

* lib/rawmemchr.c: Restore test of HAVE_RAWMEMCHR.
* modules/relocatable-prog-wrapper (Depends-on): Add stdalign.

3 years agoautoupdate
Karl Berry [Sat, 21 Aug 2021 15:27:26 +0000 (08:27 -0700)]
autoupdate

3 years agorawmemchr: modernize and simplify
Paul Eggert [Sat, 21 Aug 2021 02:25:06 +0000 (19:25 -0700)]
rawmemchr: modernize and simplify

* lib/rawmemchr.c (HAVE_RAWMEMCHR): Assume it’s not defined;
otherwise this file would not be compiled.  Include limits.h,
stdalign.h, stdint.h, verify.h.
(rawmemchr): Prefer uintptr_t to unsigned long and to size_t when
it’s the better type.  Verify that longword lacks padding.  Use
alignof rather than sizeof when checking alignment.  Simplify by
assuming C99 decl-after-statement, and by using multiplication
rather than repeated shifting and OR (modern compilers can
optimize the multiplication if needed).  Avoid unnecessary casts.
Don’t assume CHAR_WIDTH is 8.  Convert back and forth between void *
to suppress bogus GCC warnings about alignment.  Omit a
duplicate assignment to char_ptr.
* modules/rawmemchr (Depends-on): Add stdalign, stdint, verify.

3 years agoautoupdate
Karl Berry [Wed, 18 Aug 2021 14:01:44 +0000 (07:01 -0700)]
autoupdate

3 years agoc-stack: fix libsigsegv dependency
Paul Eggert [Tue, 17 Aug 2021 19:06:42 +0000 (12:06 -0700)]
c-stack: fix libsigsegv dependency

Problem reported for GNU grep by Evan Miller (Bug#50098).
* m4/c-stack.m4 (gl_C_STACK): Call gl_LIBSIGSEGV before
testing gl_cv_lib_sigsegv.

3 years agodoc: Update for glibc 2.34.
Bruno Haible [Sat, 14 Aug 2021 20:07:33 +0000 (22:07 +0200)]
doc: Update for glibc 2.34.

* doc/posix-functions/timespec_getres.texi: New file.
* doc/glibc-functions/_Fork.texi: New file.
* doc/glibc-functions/closefrom.texi: New file.
* doc/glibc-functions/dn_comp.texi: New file.
* doc/glibc-functions/dn_skipname.texi: New file.
* doc/glibc-functions/execveat.texi: New file.
* doc/glibc-functions/posix_spawn_file_actions_addclosefrom_np.texi: New
file.
* doc/glibc-functions/res_dnok.texi: New file.
* doc/glibc-functions/res_hnok.texi: New file.
* doc/glibc-functions/res_mailok.texi: New file.
* doc/glibc-functions/res_nmkquery.texi: New file.
* doc/glibc-functions/res_nquery.texi: New file.
* doc/glibc-functions/res_nquerydomain.texi: New file.
* doc/glibc-functions/res_nsearch.texi: New file.
* doc/glibc-functions/res_nsend.texi: New file.
* doc/glibc-functions/res_ownok.texi: New file.
* doc/glibc-functions/res_send.texi: New file.
* doc/gnulib.texi: Include them.
* doc/glibc-functions/inet_neta.texi: Remove file.
* doc/glibc-functions/malloc_get_state.texi: Remove file.
* doc/glibc-functions/malloc_set_state.texi: Remove file.
* doc/glibc-functions/pthread_mutex_consistent_np.texi: Remove file.
* doc/glibc-functions/pthread_mutexattr_getrobust_np.texi: Remove file.
* doc/glibc-functions/pthread_mutexattr_setrobust_np.texi: Remove file.
* doc/glibc-functions/pthread_yield.texi: Remove file.
* doc/gnulib.texi: Don't include them.
* doc/glibc-headers/resolv.texi: Update.
* doc/pastposix-functions/h_errno.texi: Likewise.
* doc/posix-functions/*.texi: Likewise.
* doc/glibc-functions/*.texi: Likewise.

3 years agomemrchr-tests: port to GCC 12
Paul Eggert [Thu, 12 Aug 2021 21:36:34 +0000 (14:36 -0700)]
memrchr-tests: port to GCC 12

* tests/test-memrchr.c: Bug#101494 is fixed in GCC 12.

3 years agosnippet/_Noreturn: Fix typo
Akim Demaille [Thu, 12 Aug 2021 07:30:41 +0000 (09:30 +0200)]
snippet/_Noreturn: Fix typo

* lib/_Noreturn.h: Fix spelling of 4.

3 years agodynarray: merge from glibc
Paul Eggert [Wed, 11 Aug 2021 20:00:57 +0000 (13:00 -0700)]
dynarray: merge from glibc

This also helps document glibc’s direction in using GCC’s
memory-allocation checking.
* lib/cdefs.h: Omit comments that glibc rejected.
(__returns_nonnull, __attr_access_none, __attr_dealloc)
(__attr_dealloc_free): New macros.
* lib/libc-config.h: Undef the new macros that are defined
unconditionally.
* lib/malloc/dynarray_at_failure.c [_LIBC]: Do not include stdlib.h.
(__libc_dynarray_at_failure) [_LIBC]: Call __libc_fatal,
fixing a bad merge previously.

3 years agocanonicalize-lgpl: Fix conflict with z/OS <sys/stat.h>.
Bruno Haible [Sun, 8 Aug 2021 20:11:03 +0000 (22:11 +0200)]
canonicalize-lgpl: Fix conflict with z/OS <sys/stat.h>.

Reported by Mike Fulton <mikefultonpersonal@gmail.com> in
<https://lists.gnu.org/archive/html/m4-discuss/2021-08/msg00000.html>
via Eric Blake.

* lib/canonicalize-lgpl.c (__stat): Remove macro.
(file_accessible): Use 'stat' instead.

3 years agoptsname_r: Drop sync with glibc.
Bruno Haible [Sun, 8 Aug 2021 19:56:42 +0000 (21:56 +0200)]
ptsname_r: Drop sync with glibc.

* lib/ptsname_r.c: Drop _LIBC code.
(__set_errno, __isatty, __stat, __ttyname_r, __ptsname_r): Remove
macros.
(ptsname_r): Rename local variable 'save_errno'.

3 years agoconfig: Update after glibc changed.
Bruno Haible [Sun, 8 Aug 2021 19:42:26 +0000 (21:42 +0200)]
config: Update after glibc changed.

* config/srclist.txt: Remove two files that glibc dropped on 2013-12-17.

3 years agorelocatable-lib-lgpl: Fix a memory leak related to a Windows DLL.
Bruno Haible [Sun, 8 Aug 2021 17:11:31 +0000 (19:11 +0200)]
relocatable-lib-lgpl: Fix a memory leak related to a Windows DLL.

Reported by Jonathan Boeing <jonathan@claws-mail.org> in
<https://lists.gnu.org/archive/html/bug-gnulib/2021-08/msg00048.html>.

* lib/relocatable.c (DllMain): Avoid memory leak in a special case
of repeated attach/detach.

3 years agofopen: Fix link error on native Windows.
Bruno Haible [Sun, 8 Aug 2021 16:54:06 +0000 (18:54 +0200)]
fopen: Fix link error on native Windows.

* modules/fopen (Depends-on): Add close.

3 years agofopen: Fix compilation error on AIX (regression from 2020-05-28).
Bruno Haible [Sun, 8 Aug 2021 16:38:45 +0000 (18:38 +0200)]
fopen: Fix compilation error on AIX (regression from 2020-05-28).

* modules/fopen (Depends-on): Add fcntl-h.

3 years agostdio: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sun, 8 Aug 2021 16:27:56 +0000 (18:27 +0200)]
stdio: Improve GCC 11 allocation-deallocation checking.

* lib/stdio.in.h (fdopen, fopen, tmpfile): For GCC >= 11: Declare nearly
always.
(popen): For GCC >= 11: Declare also when the platform already declares
the function or when the module 'popen' is not in use.

3 years agodirent: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sun, 8 Aug 2021 16:23:46 +0000 (18:23 +0200)]
dirent: Improve GCC 11 allocation-deallocation checking.

* lib/dirent.in.h (opendir): For GCC >= 11: Declare also when the
platform already declares the function or when the module 'opendir' is
not in use.
(fdopendir): For GCC >= 11: Declare also when the platform already
declares the function or when the module 'fdopendir' is not in use.

3 years agostdlib, string, wchar: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sun, 8 Aug 2021 16:18:25 +0000 (18:18 +0200)]
stdlib, string, wchar: Improve GCC 11 allocation-deallocation checking.

* lib/stdlib.in.h (aligned_alloc): For GCC >= 11: Declare also when the
platform already declares the function or when the module
'aligned_alloc' is not in use.
(calloc): For GCC >= 11: Declare nearly always.
(canonicalize_file_name): For GCC >= 11: Declare also when the platform
already declares the function or when the module 'canonicalize-lgpl' is
not in use.
(malloc, realloc): For GCC >= 11: Declare nearly always.
* lib/malloc.in.h: Remove redundant include.
(memalign): For GCC >= 11: Declare also when the platform already
declares the function or when the module 'memalign' is not in use.
* lib/string.in.h: Include <stdlib.h> always.
(strdup): For GCC >= 11: Declare also when the platform already declares
the function or when the module 'strdup' or 'strdup-posix' is not in
use.
* lib/wchar.in.h: Include <stdlib.h> always.
(wcsdup): For GCC >= 11: Declare also when the platform already declares
the function or when the module 'wcsdup' is not in use.
* modules/free-posix (Depends-on): Add string, wchar.

3 years agognulib-tool: Add support for Automake 1.16.4.
Bruno Haible [Sun, 8 Aug 2021 01:52:01 +0000 (03:52 +0200)]
gnulib-tool: Add support for Automake 1.16.4.

Reported by <shoober420@gmail.com> in
<https://lists.gnu.org/archive/html/bug-libunistring/2021-08/msg00000.html>.

* build-aux/test-driver-1.16.3.diff: Renamed from build-aux/test-driver.diff.
* build-aux/test-driver.diff: Update to match Automake 1.16.4.
* gnulib-tool (func_create_testdir, func_create_megatestdir): Try both
.diff files.

3 years agognulib-common.m4: Minor style fix.
Bruno Haible [Sun, 8 Aug 2021 00:51:24 +0000 (02:51 +0200)]
gnulib-common.m4: Minor style fix.

* m4/gnulib-common.m4 (gl_COMMON_BODY): Keep list of attributes sorted
alphabetically.

3 years agouninorm, unistr: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sun, 8 Aug 2021 00:14:11 +0000 (02:14 +0200)]
uninorm, unistr: Improve GCC 11 allocation-deallocation checking.

* lib/uninorm.in.h (uninorm_filter_free): Move declaration up.
(uninorm_filter_create): Declare that deallocation must happen through
'uninorm_filter_free'.
* lib/unistr.in.h: Include <stdlib.h>.
(u8_strdup, u16_strdup, u32_strdup): Declare that deallocation must
happen through 'free'.

3 years agoialloc: Prepare for allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 22:11:49 +0000 (00:11 +0200)]
ialloc: Prepare for allocation-deallocation checking.

* lib/ialloc.h (imalloc, irealloc, icalloc): Add comment that
deallocation must happen through 'free'.

3 years agoaligned-malloc: Prepare for allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 22:09:10 +0000 (00:09 +0200)]
aligned-malloc: Prepare for allocation-deallocation checking.

* lib/aligned-malloc.h (aligned_free): Move declaration up.
(aligned_malloc): Add comment that deallocation must happen through
'aligned_free'.

3 years agolist, set, oset, map, omap: Prepare allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 22:00:36 +0000 (00:00 +0200)]
list, set, oset, map, omap: Prepare allocation-deallocation checking.

* lib/gl_list.h (gl_list_create_empty, gl_list_nx_create_empty,
gl_list_create, gl_list_nx_create): Add comment that deallocation must
happen through 'gl_list_free'.
* lib/gl_xlist.h (gl_list_create_empty, gl_list_create): Likewise.
* lib/gl_sublist.h (gl_sublist_create, gl_sublist_nx_create): Likewise.
* lib/gl_xsublist.h (gl_sublist_create): Likewise.
* lib/gl_set.h (gl_set_create_empty, gl_set_nx_create_empty): Add
comment that deallocation must happen through 'gl_set_free'.
* lib/gl_xset.h (gl_set_create_empty): Likewise.
* lib/gl_oset.h (gl_oset_create_empty, gl_oset_nx_create_empty): Add
comment that deallocation must happen through 'gl_oset_free'.
* lib/gl_xoset.h (gl_oset_create_empty): Likewise.
* lib/gl_map.h (gl_map_create_empty, gl_map_nx_create_empty): Add
comment that deallocation must happen through 'gl_map_free'.
* lib/gl_xmap.h (gl_map_create_empty): Likewise.
* lib/gl_omap.h (gl_omap_create_empty, gl_omap_nx_create_empty): Add
comment that deallocation must happen through 'gl_omap_free'.
* lib/gl_xomap.h (gl_omap_create_empty): Likewise.

3 years agoxgetdomainname: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 21:36:42 +0000 (23:36 +0200)]
xgetdomainname: Improve GCC 11 allocation-deallocation checking.

* lib/xgetdomainname.h: Include <stdlib.h>.
(xgetdomainname): Declare that deallocation must happen through 'free'.

3 years agoxgetdomainname: Ensure .c file starts with '#include <config.h>'.
Bruno Haible [Sat, 7 Aug 2021 21:30:53 +0000 (23:30 +0200)]
xgetdomainname: Ensure .c file starts with '#include <config.h>'.

* lib/xgetaname-impl.h: New file, based on lib/xgethostname.c.
* lib/xgethostname.c: Move implementation to lib/xgetaname-impl.h.
* lib/xgetdomainname.c: Include <config.h>. Include xgetaname-impl.h
instead of xgethostname.c.
* modules/xgethostname (Files): Add lib/xgetaname-impl.h.
* modules/xgetdomainname (Files): Likewise.
(Depends-on): Remove xgethostname. Add free-posix, xalloc.

3 years agoxstrndup: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 21:15:21 +0000 (23:15 +0200)]
xstrndup: Improve GCC 11 allocation-deallocation checking.

* lib/xstrndup.h: Include <stdlib.h> instead of <stddef.h>.
(xstrndup): Declare that deallocation must happen through 'free'.

3 years agoxstriconveh: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 21:11:48 +0000 (23:11 +0200)]
xstriconveh: Improve GCC 11 allocation-deallocation checking.

* lib/xstriconveh.h: Include <stdlib.h> instead of <stddef.h>.
(xstr_cd_iconveh, xstr_iconveh): Declare that deallocation must happen
through 'free'.

3 years agoxmemdup0: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 21:08:45 +0000 (23:08 +0200)]
xmemdup0: Improve GCC 11 allocation-deallocation checking.

* lib/xmemdup0.h: Include <stdlib.h> instead of <stddef.h>.
(xmemdup0): Declare that deallocation must happen through 'free'.

3 years agowindows-spawn: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 21:05:51 +0000 (23:05 +0200)]
windows-spawn: Improve GCC 11 allocation-deallocation checking.

* lib/windows-spawn.h: Include <stdlib.h>.
(compose_command, compose_envblock): Declare that deallocation must
happen through 'free'.

3 years agostring-buffer: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 20:16:55 +0000 (22:16 +0200)]
string-buffer: Improve GCC 11 allocation-deallocation checking.

* lib/string-buffer.h: Include <stdlib.h> instead of <stddef.h>.
(sb_dupfree): Declare that deallocation must happen through 'free'.

3 years agostriconveha: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 20:14:02 +0000 (22:14 +0200)]
striconveha: Improve GCC 11 allocation-deallocation checking.

* lib/striconveha.h: Include <stdlib.h> instead of <stddef.h>.
(str_iconveha): Declare that deallocation must happen through 'free'.

3 years agostriconveh: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 20:10:29 +0000 (22:10 +0200)]
striconveh: Improve GCC 11 allocation-deallocation checking.

* lib/striconveh.h: Include <stdlib.h> instead of <stddef.h>.
(str_cd_iconveh, str_iconveh): Declare that deallocation must happen
through 'free'.

3 years agostriconv: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 20:08:16 +0000 (22:08 +0200)]
striconv: Improve GCC 11 allocation-deallocation checking.

* lib/striconv.h: Include <stdlib.h> instead of <stddef.h>.
(str_cd_iconv, str_iconv): Declare that deallocation must happen through
'free'.

3 years agorelocatable-lib-lgpl: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 20:04:55 +0000 (22:04 +0200)]
relocatable-lib-lgpl: Improve GCC 11 allocation-deallocation checking.

* lib/relocatable.h: Include <stdlib.h>.
(compute_curr_prefix): Declare that deallocation must happen through
'free'.

3 years agoregex-quote: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 20:02:37 +0000 (22:02 +0200)]
regex-quote: Improve GCC 11 allocation-deallocation checking.

* lib/regex-quote.h: Include <stdlib.h> instead of <stddef.h>.
(regex_quote): Declare that deallocation must happen through 'free'.

3 years agoreadline: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 19:55:00 +0000 (21:55 +0200)]
readline: Improve GCC 11 allocation-deallocation checking.

* lib/readline.h: Include <stdlib.h>.
(readline): Declare that deallocation must happen through 'free'.

3 years agoread-file: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 19:52:48 +0000 (21:52 +0200)]
read-file: Improve GCC 11 allocation-deallocation checking.

* lib/read-file.h: Include <stdlib.h> instead of <stddef.h>.
(fread_file, read_file): Declare that deallocation must happen through
'free'.

3 years agopipe-filter-gi: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 19:49:55 +0000 (21:49 +0200)]
pipe-filter-gi: Improve GCC 11 allocation-deallocation checking.

* lib/pipe-filter.h (pipe_filter_gi_close): Move declaration up.
(pipe_filter_gi_create): Declare that deallocation must happen through
'pipe_filter_gi_close'.

3 years agojavaversion: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 19:46:24 +0000 (21:46 +0200)]
javaversion: Improve GCC 11 allocation-deallocation checking.

* lib/javaversion.h: Include <stdlib.h>.
(javaexec_version): Declare that deallocation must happen through
'free'.

3 years agoino-map: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:47:47 +0000 (19:47 +0200)]
ino-map: Improve GCC 11 allocation-deallocation checking.

* lib/ino-map.h (ino_map_free): Move declaration up.
(ino_map_alloc): Declare that deallocation must happen through
'ino_map_free'.

3 years agohash: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:45:19 +0000 (19:45 +0200)]
hash: Improve GCC 11 allocation-deallocation checking.

* lib/hash.h (hash_free): Move declaration up.
(hash_initialize, hash_xinitialize): Declare that deallocation must
happen through 'hash_free'.

3 years agohamt: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:42:08 +0000 (19:42 +0200)]
hamt: Improve GCC 11 allocation-deallocation checking.

* lib/hamt.h (hamt_free): Move declaration up.
(hamt_create, hamt_copy): Declare that deallocation must happen through
'hamt_free'.

3 years agoget_progname_of: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:36:50 +0000 (19:36 +0200)]
get_progname_of: Improve GCC 11 allocation-deallocation checking.

* lib/get_progname_of.h: Include <stdlib.h>.
(get_progname_of): Declare that deallocation must happen through 'free'.

3 years agofts: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:34:16 +0000 (19:34 +0200)]
fts: Improve GCC 11 allocation-deallocation checking.

* lib/fts_.h (fts_open): Declare that deallocation must happen through
'fts_close'.

3 years agoeealloc: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:32:01 +0000 (19:32 +0200)]
eealloc: Improve GCC 11 allocation-deallocation checking.

* lib/eealloc.h (eemalloc): Declare that deallocation must happen
through 'free'.

3 years agodi-set: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:29:57 +0000 (19:29 +0200)]
di-set: Improve GCC 11 allocation-deallocation checking.

* lib/di-set.h (di_set_free): Move declaration up.
(di_set_alloc): Declare that deallocation must happen through
'di_set_free'.

3 years ago[x]concat-filename: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:27:05 +0000 (19:27 +0200)]
[x]concat-filename: Improve GCC 11 allocation-deallocation checking.

* lib/concat-filename.h: Include <stdlib.h>.
(concatenated_filename, xconcatenated_filename): Declare that
deallocation must happen through 'free'.

3 years agoclean-temp: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:23:57 +0000 (19:23 +0200)]
clean-temp: Improve GCC 11 allocation-deallocation checking.

* lib/clean-temp.h (cleanup_temp_dir): Move declaration up.
(create_temp_dir): Declare that deallocation must happen through
'cleanup_temp_dir'.

3 years agocanon-host: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:21:19 +0000 (19:21 +0200)]
canon-host: Improve GCC 11 allocation-deallocation checking.

* lib/canon-host.h: Include <stdlib.h>.
(canon_host, canon_host_r): Declare that deallocation must happen
through 'free'.

3 years agoc-xvasprintf: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:16:48 +0000 (19:16 +0200)]
c-xvasprintf: Improve GCC 11 allocation-deallocation checking.

* lib/c-xvasprintf.h: Include <stdlib.h>.
(c_xasprintf, c_xvasprintf): Declare that deallocation must happen
through 'free'.

3 years agobitsetv: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:13:56 +0000 (19:13 +0200)]
bitsetv: Improve GCC 11 allocation-deallocation checking.

* lib/bitsetv.h (bitsetv_free): Move declaration up.
(bitsetv_alloc, bitsetv_create): Declare that deallocation must happen
through 'bitsetv_free'.

3 years agobitset: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:10:38 +0000 (19:10 +0200)]
bitset: Improve GCC 11 allocation-deallocation checking.

* lib/bitset.h (bitset_free): Move declaration up.
(bitset_alloc, bitset_create): Declare that deallocation must happen
through 'bitset_free'.
(bitset_obstack_free): Move declaration up.
(bitset_obstack_alloc): Declare that deallocation must happen through
'bitset_obstack_free'.

3 years agoargv-iter: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:05:31 +0000 (19:05 +0200)]
argv-iter: Improve GCC 11 allocation-deallocation checking.

* lib/argv-iter.h (argv_iter_free): Move declaration up.
(argv_iter_init_argv, argv_iter_init_stream): Declare that deallocation
must happen through 'argv_iter_free'.

3 years agoargp: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 17:00:42 +0000 (19:00 +0200)]
argp: Improve GCC 11 allocation-deallocation checking.

* lib/argp-fmtstream.h (__argp_fmtstream_free, argp_fmtstream_free):
Move declarations up.
(__argp_make_fmtstream): Declare that deallocation must happen through
'__argp_fmtstream_free'.
(argp_make_fmtstream): Declare that deallocation must happen through
'argp_fmtstream_free'.

3 years agoareadlink, areadlinkat: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 16:55:45 +0000 (18:55 +0200)]
areadlink, areadlinkat: Improve GCC 11 allocation-deallocation checking.

* lib/areadlink.h: Include <stdlib.h> instead of <stddef.h>.
(areadlink, areadlink_with_size, areadlinkat, areadlinkat_with_size):
Declare that deallocation must happen through 'free'.

3 years agostdio: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 16:17:55 +0000 (18:17 +0200)]
stdio: Improve GCC 11 allocation-deallocation checking.

* lib/stdio.in.h (fdopen, fopen, tmpfile): Declare that deallocation
must happen through 'fclose'.
(popen): Declare that deallocation must happen through 'pclose'.
* lib/stdio-safer.h (fopen_safer, tmpfile_safer): Declare that
deallocation must happen through 'fclose'.
(popen_safer): Declare that deallocation must happen through 'pclose'.
(freopen_safer): Declare that arguments must be non-NULL.

3 years agodirent: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 16:05:44 +0000 (18:05 +0200)]
dirent: Improve GCC 11 allocation-deallocation checking.

* lib/dirent.in.h (closedir): Move declaration up.
(opendir, fdopendir): Declare that that deallocation must happen through
'closedir'.
* lib/dirent-safer.h (opendir_safer): Likewise.
* lib/opendirat.h (opendirat): Likewise.

3 years agostdlib, string, wchar: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 14:40:12 +0000 (16:40 +0200)]
stdlib, string, wchar: Improve GCC 11 allocation-deallocation checking.

* lib/stdlib.in.h (free): Move declaration up.
(aligned_alloc, calloc, canonicalize_file_name, malloc, realloc):
Declare that deallocation must happen through 'free' (which may actually
be 'rpl_free').
* lib/string.in.h: Include <stdlib.h>.
(strdup): Declare deallocation.
* lib/wchar.in.h: Include <stdlib.h>.
(wcsdup): Declare deallocation.
* lib/malloc.in.h: Include <stdlib.h>.
(memalign): Declare deallocation.

3 years agoyear2038: Fix recommendation regarding -m64 flag.
Bruno Haible [Sat, 7 Aug 2021 14:03:22 +0000 (16:03 +0200)]
year2038: Fix recommendation regarding -m64 flag.

* m4/year2038.m4 (gl_YEAR2038_BODY): Recommend to put option --m64 in
CC, not in CPPFLAGS and LDFLAGS.

3 years agoquotearg: Tweak last commit.
Bruno Haible [Sat, 7 Aug 2021 13:24:51 +0000 (15:24 +0200)]
quotearg: Tweak last commit.

* lib/quotearg.h: Don't include <stddef.h>. Remove stray semicolon.

3 years agomalloca: Tweak last commit.
Bruno Haible [Sat, 7 Aug 2021 13:19:33 +0000 (15:19 +0200)]
malloca: Tweak last commit.

* lib/malloca.h: Keep use and declaration of mmalloca close together.

3 years agodirname-lgpl, sh-quote, system-quote, xstriconv: Clean up includes.
Bruno Haible [Sat, 7 Aug 2021 13:11:43 +0000 (15:11 +0200)]
dirname-lgpl, sh-quote, system-quote, xstriconv: Clean up includes.

* lib/dirname.h: Don't include <stddef.h>.
* lib/sh-quote.h: Likewise.
* lib/system-quote.h: Likewise.
* lib/xstriconv.h: Likewise.

3 years agodfa: Improve GCC 11 allocation-deallocation checking.
Bruno Haible [Sat, 7 Aug 2021 13:01:33 +0000 (15:01 +0200)]
dfa: Improve GCC 11 allocation-deallocation checking.

* lib/dfa.h (dfamust): Declare that deallocation must happen through
dfamustfree.

3 years agoglob: merge from glibc
Paul Eggert [Fri, 6 Aug 2021 22:08:27 +0000 (15:08 -0700)]
glob: merge from glibc

* lib/glob-libc.h, lib/glob.c: Merge changes from glibc 2.34.
The result should be copyable directly into glibc.
* modules/glob-h (glob-libc.gl.h): Also omit __THROWNL.

3 years agoannounce-gen: Text fix suggested by Paul Eggert.
Simon Josefsson [Wed, 4 Aug 2021 09:18:39 +0000 (11:18 +0200)]
announce-gen: Text fix suggested by Paul Eggert.