Log

Author Commit Date CI Message
Bruno Haible 92ee1fe6 2021-03-22T13:47:44 doc: Mention an open glibc bug. * doc/posix-functions/mbrtowc.texi: Mention the possible out-of-range wchar_t values returned by this function on glibc. * doc/posix-functions/mbtowc.texi: Likewise.
Benno Schulenberg 1cd2761d 2021-03-22T13:35:16 mbrtowc: Remove a redundant condition. * lib/mbrtowc-impl-utf8.h: There is no need to check for c == 0xf4 when !(c < 0xf4), as ten lines earlier c <= 0xf4 was established.
Bruno Haible 4f42fc4d 2021-03-22T09:34:09 linkedhash-list: Relicense under LGPLv2+. Paul Eggert's approval is in <https://lists.gnu.org/archive/html/bug-gnulib/2021-03/msg00102.html>. * modules/linkedhash-list (License): Change to LGPLv2+.
Bruno Haible 9ad38b46 2021-03-22T02:50:07 fatal-signal: Remove dependency upon xalloc. * lib/fatal-signal.h (at_fatal_signal): Change return type to 'int'. * lib/fatal-signal.c: Don't include xalloc.h. (at_fatal_signal): Return an error indicator. * modules/fatal-signal (Depends-on): Remove xalloc. * NEWS: Mention the change. * lib/term-style-control.c: Include xalloc.h. (ensure_other_signal_handlers): Test return value of at_fatal_signal. * lib/clean-temp.c (do_init_clean_temp): Likewise. * lib/wait-process.c (register_slave_subprocess): Likewise. * modules/term-style-control (Depends-on): Add xalloc-die. * modules/clean-temp (Depends-on): Likewise. * modules/wait-process (Depends-on): Likewise.
Paul Eggert ea2ccc2e 2021-03-21T17:37:00 diacrit: remove * MODULES.html.sh (func_all_modules), NEWS: Remove diacrit. * lib/diacrit.c, lib/diacrit.h, modules/diacrit: Remove.
Paul Eggert af3745fb 2021-03-21T14:52:08 tests: fix signed overflow issues * tests/test-dynarray.c (value_at): Avoid undefined behavior in signed integer multiplication. * tests/test-scratch-buffer.c (byte_at): Likewise, for the theoretically-possible case where size_t is narrower than int.
Bruno Haible 0b06bc0c 2021-03-21T16:03:57 doc: More updates. * doc/glibc-functions/sethostname.texi: Update regarding macOS. * doc/glibc-functions/sethostname.texi: List the affected platforms.
Bruno Haible 79c4db53 2021-03-21T14:56:02 doc: Update for macOS 11.1. * doc/posix-headers/*.texi: Update. * doc/glibc-headers/*.texi: Update. * doc/posix-functions/*.texi: Likewise. * doc/pastposix-functions/*.texi: Likewise. * doc/glibc-functions/*.texi: Likewise. * m4/aligned_alloc.m4 (gl_FUNC_ALIGNED_ALLOC): Update cross-compilation guess.
Bruno Haible 49855b3b 2021-03-21T12:30:33 ftell: Document bug in macOS >= 10.15. * doc/posix-functions/ftell.texi: Mention the macOS bug.
Bruno Haible a646e362 2021-03-21T03:46:05 ftello: Work around bug in macOS >= 10.15. Reported by Martin Storsjö <martin@martin.st> in <https://lists.gnu.org/archive/html/bug-gnulib/2020-12/msg00002.html>. * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): On macOS, don't define FUNC_UNGETC_BROKEN. Instead, set gl_ftello_broken_after_ungetc to yes. * m4/ftello.m4 (gl_FUNC_FTELLO): Invoke gl_FUNC_UNGETC_WORKS, and arrange to provide the workaround if ftello is broken after ungetc. * lib/ftello.c: Include <errno.h>, intprops.h. (ftello) [FTELLO_BROKEN_AFTER_UNGETC]: Implement from scratch. * modules/ftello (Files): Add m4/ungetc.m4. (Depends-on): Add intprops. * doc/posix-functions/ftello.texi: Mention the macOS bug.
Bruno Haible cfe9452d 2021-03-20T22:34:16 math C++ tests: Fix compilation error on macOS 11.2. * lib/math.in.h (isnan): For clang >= 12 on macOS, declare 'rpl_isnan', not 'isnan'.
Bruno Haible d1e7d49d 2021-03-19T03:47:23 simple-atomic tests: Fix compilation error on Solaris 10. Reported by Tom G. Christensen <tgc@jupiterrise.com> in <https://lists.gnu.org/archive/html/bug-gnulib/2021-03/msg00085.html>. * tests/test-simple-atomic.c (yield): Define only after all #includes.
Bruno Haible 2b2e2c1c 2021-03-19T03:38:53 simple-atomic: Fix compilation error on Solaris 10/x86_64 with cc. * lib/simple-atomic.c (atomic_compare_and_swap_ptr): Correct asm instruction.
Paul Eggert 734cacc0 2021-03-18T11:00:53 argmatch: fix testing typo Problem and fix reported by Gisle Vanem in: https://lists.gnu.org/r/bug-gnulib/2021-03/msg00083.html * lib/argmatch.c (main) [TEST]: Fix address-of typo.
Karl Berry 363497c9 2021-03-16T08:14:30 autoupdate
Paul Eggert 257183ec 2021-03-14T21:28:40 intprops: improve commentary * lib/intprops.h: Improve comments about promotion etc.
Bruno Haible 02a474ef 2021-03-14T19:22:07 time_rz: Put reference documentation into the .h file. * lib/time.in.h (timezone_t, tzalloc, tzfree, localtime_rz, mktime_z): Add comments, based on modules/time_rz. * modules/time_rz (Comment): Remove section.
Bruno Haible 35f8ff2e 2021-03-14T19:19:07 parse-datetime tests: Avoid a test failure on NetBSD. Reported by Thomas Klausner <tk@giga.or.at> in <https://lists.gnu.org/archive/html/bug-gnulib/2021-03/msg00069.html>. * tests/test-parse-datetime.c (main): Skip two tests on NetBSD.
Karl Berry 981ada97 2021-03-11T11:26:27 autoupdate
Paul Eggert fc6d7d85 2021-03-10T15:04:55 libc-config: port to DragonFlyBSD 5.9 DragonFlyBSD defines __nonnull incompatibly with glibc, so avoid the use of __nonnull in Gnulib code. Problem reported by Gavin Smith in: https://lists.gnu.org/r/bug-gnulib/2021-03/msg00066.html * lib/cdefs.h (__attribute_nonnull__): Rename from __nonnull. All uses in Gnulib changed. There should be no need to change glibc code that is not shared with Gnulib. (__nonnull): New macro, defined in terms of __attribute_nonnull__, and which can be used in glibc code that is not shared with Gnulib.
Paul Eggert f0d3a4d7 2021-03-07T13:47:02 manywarnings: modernize documentation Problem reported by Reuben Thomas in: https://lists.gnu.org/r/bug-gnulib/2021-03/msg00046.html * doc/manywarnings.texi (manywarnings): Update in the light of recent changes to the manywarnings module.
Bruno Haible c7c26eb6 2021-03-07T12:24:07 sysexits: Fix for Haiku. * lib/sysexits.in.h: Don't assume that <sysexits.h>, when it exists, defines anything. * doc/glibc-headers/sysexits.texi: Mention the Haiku bug.
Bruno Haible 2a200f4e 2021-03-07T10:45:58 Rename GNULIB_WCHAR_SINGLE to GNULIB_WCHAR_SINGLE_LOCALE. * lib/lc-charset-dispatch.c: Test GNULIB_WCHAR_SINGLE_LOCALE instead of GNULIB_WCHAR_SINGLE. * lib/wcwidth.c: Likewise. * tests/test-wcwidth.c: Likewise. * doc/multithread.texi: Document GNULIB_WCHAR_SINGLE_LOCALE instead of GNULIB_WCHAR_SINGLE. * NEWS: Document the change.
Bruno Haible cd057fa8 2021-03-07T02:57:46 mbrtowc: Allow locking optimization independently of 'unlocked-io'. * lib/mbtowc-lock.h: Test GNULIB_MBRTOWC_SINGLE_THREAD instead of USE_UNLOCKED_IO. * doc/multithread.texi: Document GNULIB_MBRTOWC_SINGLE_THREAD.
Bruno Haible ede75ad3 2021-03-07T02:47:03 regex: Allow locking optimization independently of 'unlocked-io'. * lib/regex_internal.h: Test GNULIB_REGEX_SINGLE_THREAD instead of USE_UNLOCKED_IO. * doc/multithread.texi: Document GNULIB_REGEX_SINGLE_THREAD.
Bruno Haible f4bf3936 2021-03-07T02:42:24 exclude: Allow stdio optimization independently of 'unlocked-io'. * lib/exclude.c: Test GNULIB_EXCLUDE_SINGLE_THREAD instead of USE_UNLOCKED_IO. * modules/exclude (Depends-on): Add unlocked-io-internal. * doc/multithread.texi: Document GNULIB_EXCLUDE_SINGLE_THREAD.
Bruno Haible d26b0a26 2021-03-07T02:36:31 readutmp: Optimize stdio accesses. * lib/readutmp.c: Include unlocked-io.h unconditionally. * modules/readutmp (Depends-on): Add unlocked-io-internal.
Bruno Haible 895c6f06 2021-03-07T02:31:45 mountlist: Optimize stdio accesses. * lib/mountlist.c: Include unlocked-io.h unconditionally. * modules/mountlist (Depends-on): Add unlocked-io-internal.
Bruno Haible 92052c44 2021-03-07T02:21:49 getusershell: Optimize stdio accesses when possible. * lib/getusershell.c: Test GNULIB_GETUSERSHELL_SINGLE_THREAD instead of USE_UNLOCKED_IO. * modules/getusershell (Depends-on): Add unlocked-io-internal. * doc/multithread.texi: Document GNULIB_GETUSERSHELL_SINGLE_THREAD.
Bruno Haible 212f0b69 2021-03-07T01:58:10 unlocked-io-internal: New module. * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Don't define USE_UNLOCKED_IO here. * modules/unlocked-io-internal: New file, based on modules/unlocked-io. * modules/unlocked-io (Description): Clarify. (Files, Depends-on): Just use the unlocked-io-internal module. (configure.ac): Define GNULIB_STDIO_SINGLE_THREAD and USE_UNLOCKED_IO here. * doc/multithread.texi: Clarify when the 'unlocked-io' module can be used.
Bruno Haible 7ea7c3e2 2021-03-07T01:39:16 posixtm: Remove unused includes. * lib/posixtm.c: Don't include <stdio.h>, <sys/types.h>, unlocked-io.h.
Bruno Haible 84b97a73 2021-03-07T00:41:44 dynarray: Add tests. * tests/test-dynarray.c: New file. * modules/dynarray-tests: New file.
Bruno Haible 7ce163b7 2021-03-07T00:40:27 dynarray: Make the module usable on its own. * lib/dynarray.h: Document the exported API. Comments taken from lib/malloc/dynarray-skeleton.c and lib/malloc/dynarray.h. Distinguish an internal include from an include for instantiation. In the latter case, include <libc-config.h> and <malloc/dynarray-skeleton.c>. * modules/dynarray (Depends-on): Add intprops. (Include): Reduce to just "dynarray.h".
Bruno Haible 0ff2812c 2021-03-07T00:27:13 scratch_buffer: Add comment. * lib/scratch_buffer.h: Add comment.
Paul Eggert 487b9551 2021-03-06T08:23:48 parse-datetime2: fix licensing Problem reported by Bruno Haible in: https://lists.gnu.org/r/bug-gnulib/2021-03/msg00017.html * gnulib-tool (func_get_license): Treat parse-datetime2 (actually, anything starting with "parse-datetime") like parse-datetime, as far as licenses go.
Bruno Haible fa6c6f2a 2021-03-06T13:49:52 free-posix: Update documentation. * doc/posix-functions/free.texi: Add platform details.
Bruno Haible 3699ec97 2021-03-06T13:49:30 doc: Update for glibc 2.33. * doc/glibc-functions/mallinfo2.texi: New file. * doc/gnulib.texi: Include it. (Glibc sys/vtimes.h): Remove section. * doc/glibc-functions/vtimes.texi: Remove file. * doc/pastposix-functions/h_errno.texi: Update. * doc/posix-functions/*.texi: Likewise. * doc/glibc-functions/*.texi: Likewise.
Bruno Haible 82f2c91f 2021-03-05T00:21:53 stddef: Generalize tcc workaround to other compilers. Suggested by Paul Eggert in <https://lists.gnu.org/archive/html/bug-gnulib/2021-03/msg00027.html>. * lib/stddef.in.h: Undefine the __need_* macros with all compilers. * doc/posix-headers/stddef.texi: Mention that the TinyCC bug also exists on macOS.
Paul Eggert 3c55969d 2021-03-04T00:47:19 stdalign: port to tcc + glibc * lib/stdalign.in.h (_Alignas): Do not define using __attribute__ if __attribute__ is defined as a macro, as __attribute__ surely a no-op in that case and this is an area where __attribute__ cannot simply be ignored. * m4/stdalign.m4 (gl_STDALIGN_H): Include <stdint.h> so that it #defines __attribute__(x) to nothing on glibc-based systems when non-GNU-C-compatible compilers are used. This exposes a bug in Tiny C Compiler 0.9.27’s implementation of _Alignas on glibc platforms.
Bruno Haible 7c748055 2021-03-04T02:18:15 asyncsafe-spin, simple-atomic: Add support for tcc/x86. * lib/asyncsafe-spin.c (memory_barrier): With tcc/x86, don't use the 'mfence' instruction. * lib/simple-atomic.c (memory_barrier): Likewise.
Bruno Haible 65470c21 2021-03-03T13:32:41 asyncsafe-spin, simple-atomic: Add support for tcc. * lib/asyncsafe-spin.c (memory_barrier, atomic_compare_and_swap): On i386 and x86_64, treat tcc like older GCC or clang. * lib/simple-atomic.c (memory_barrier, atomic_compare_and_swap, atomic_compare_and_swap_ptr): Likewise.
Bruno Haible 3b0808af 2021-03-03T03:56:50 stddef: Work around an interoperability problem of tcc with glibc. Reported by Luca Saiu <positron@gnu.org> in <https://lists.gnu.org/archive/html/bug-gnulib/2021-03/msg00011.html>. * lib/stddef.in.h [__TINYC__]: In case of the special invocation convention, undefine the macros that TinyCC's <stddef.h> should undefine but doesn't. * doc/posix-headers/stddef.texi: Mention the TinyCC bug.
Paul Eggert 495dcf8d 2021-03-02T16:27:39 mbrtowc: port to AIX 7.1 with xlc 12.1 Fix a problem with locks when building GNU Tar (Savannah commit 55f2a0772e08b9febac3ac0de5cb048d4c60d2f5) on AIX 7.1 with IBM XL C/C++ V12.1 using ‘./configure CC=xlc’. The link fails due to missing definitions of pthread_mutex_lock and pthread_mutex_unlock. GNU Tar uses unlocked-io and so should not need to worry about multithreading or locks. * lib/mbtowc-lock.h (mbtowc_with_lock) [USE_UNLOCKED_IO]: Don’t bother with locks, since this app is single-threaded. There may be similar linking problems with lib/nl_langinfo.c and lib/setlocale_null.c but my GNU Tar build didn’t run into them, so I left them alone for now.
Paul Eggert 92fb5eec 2021-03-01T00:48:47 * modules/parse-datetime2: New file.
Paul Eggert 3d15181e 2021-03-01T00:27:25 unlocked-io: do not redefine getc_unlocked etc. I ran into this problem on AIX 7.1 with GNU Tar, which enables visibility of getc_unlocked etc. after testing whether they’re declared, causing argp-namefrob.h and unlocked-io.h to redefine the macros. * lib/argp-namefrob.h, lib/unlocked-io.h: (clearerr_unlocked, feof_unlocked ferror_unlocked) (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked) (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked) (putc_unlocked, putchar_unlocked): Do not define if already defined.
Paul Eggert 4e7f59b2 2021-03-01T00:24:05 parse-datetime2: new module This splits the old parse-datetime into two parts; the first is parse-datetime2 which supports all the new bells and whistles, the second is parse-datetime, which reverts to its original intent. This avoids some bogus diagnostics when build GNU Tar with gcc -flto -fanalyze and with --enable-gcc-warnings. And it slims down the executable a bit. * NEWS: Mention this. * lib/parse-datetime.y (parser_control) [!GNULIB_PARSE_DATETIME2]: Omit parse_datetime_debug member. (debugging): New function. Use it everywhere the old code would load parse_datetime_debug. (parse_datetime_body): New static function, with the body of the old parse_datetime2. Set pc.parse_datetime_debug only if GNULIB_PARSE_DATETIME2. (parse_datetime2, parse_datetime): Use this new function. (parse_datetime2) [!GNULIB_PARSE_DATETIME2]: Remove.
Bruno Haible 783f2967 2021-02-27T18:12:09 string-buffer: Fixes. * modules/string-buffer (License): Change to LGPL. * tests/test-string-buffer.c (main): Add another sb_appendf call, that is more likely to fail.
Bernhard Voelker 6466d254 2021-02-25T00:58:25 gitlog-to-changelog: output SHA in "empty commit message" warning * build-aux/gitlog-to-changelog: Add $sha to above warning diagnostic.
Paul Eggert 5c7fc16b 2021-02-24T11:36:06 glob: include libc-config.h only if needed
Paul Eggert 494fea03 2021-02-24T10:52:59 glob: include libc-config.h in a more-standard way Inspired by Tom Tromey’s report for RHEL 6 in: https://lists.gnu.org/r/bug-gnulib/2021-02/msg00088.html * lib/glob.c [!_LIBC]: Include libc-config.h, not just config.h
Karl Berry 8752f43f 2021-02-24T09:40:33 autoupdate
Bruno Haible c9b44f21 2021-02-21T21:41:53 string-buffer: Add tests. * tests/test-string-buffer.c: New file. * modules/string-buffer-tests: New file.
Bruno Haible 75461c74 2021-02-21T21:39:07 string-buffer: New module. * lib/string-buffer.h: New file. * lib/string-buffer.c: New file. * modules/string-buffer: New file. * doc/posix-functions/open_memstream.texi: Mention the new module.
Bruno Haible df2105c7 2021-02-21T19:32:36 scratch_buffer: Document the exported API. * lib/scratch_buffer.h: Add comments, taken from lib/malloc/scratch_buffer.h.
Bruno Haible d0ea400d 2021-02-21T19:21:42 DEPENDENCIES: Update. * DEPENDENCIES: Require GCC >= 3.1. Tell where to find working GNU m4 tarballs. Mention awk. Point to pre-built packages for gettext, bison, gperf, texinfo.
Bruno Haible 7563be91 2021-02-20T14:13:17 parse-datetime: Fix comment. * modules/parse-datetime (Makefile.am): Fix comment.
Bruno Haible 4d4fb2be 2021-02-17T03:22:58 passfd: Fix test failure on FreeBSD >= 12 and NetBSD in 64-bit mode. * lib/passfd.c (recvfd): Use the CMSG_SPACE macro to compute the value for msg_controllen.
Paul Eggert 4b5bc7fd 2021-02-16T11:41:19 Port better to macOS Mojave Problem reported by Tom Shields in: https://lists.gnu.org/r/bug-gnulib/2021-02/msg00064.html * config/srclist.txt: Comment out dynarray_finalize.c. * lib/dynarray.h (__libc_dynarray_at_failure): Don’t include libc-config.h here, as that’s the includer’s responsibility. * lib/malloc/dynarray_at_failure.c: * lib/malloc/dynarray_emplace_enlarge.c: * lib/malloc/dynarray_finalize.c: * lib/malloc/dynarray_resize.c: * lib/malloc/dynarray_resize_clear.c: If _LIBC is not defined, include libc-config.h.
Bruno Haible 29a3fb3e 2021-02-16T01:31:39 linked-list test: Add test for SIGNAL_SAFE_LIST. (It currently fails.) * tests/test-asyncsafe-linked_list.sh: New file. * tests/test-asyncsafe-linked_list.c: New file. * modules/linked-list-tests (Files): Add them. (Depends-on): Add thread, yield, nanosleep, sigaction, sigprocmask. (Makefile.am): Arrange to compile test-asyncsafe-linked_list.c and run test-asyncsafe-linked_list.sh.
Bruno Haible 43e5eca6 2021-02-15T04:29:18 simple-atomic: Add tests. * tests/test-simple-atomic.c: New file. * modules/simple-atomic-tests: New file.
Bruno Haible 0a6dc302 2021-02-15T04:25:38 simple-atomic: New module. * lib/simple-atomic.h: New file. * lib/simple-atomic.c: New file, based on lib/asyncsafe-spin.c. * modules/simple-atomic: New file.
Bruno Haible 74a0cdfe 2021-02-15T03:41:12 Fix distinction of 32-bit/64-bit mode with xlc 13.1.3 on AIX. * m4/host-cpu-c-abi.m4 (gl_HOST_CPU_C_ABI, gl_HOST_CPU_C_ABI_32BIT): Test __LP64__ instead of _ARCH_PPC64. * m4/lib-ld.m4 (AC_LIB_PROG_LD): Likewise. * lib/stddef.in.h: Likewise.
Bruno Haible 4ef9c7af 2021-02-15T03:35:27 Correct placement of last ChangeLog entry.
Ozkan Sezer 802931d3 2021-02-11T18:39:56 lib-symbol-visibility: Make it work with -Wmissing-prototypes. * m4/visibility.m4 (gl_VISIBILITY): Avoid error from simultaneous use of -Wmissing-prototypes and -Werror.
Bruno Haible 0b38e1d6 2021-02-08T23:18:34 stddef: Fix test-stddef compilation error on MidnightBSD/x86. * lib/stddef.in.h (_GL_STDDEF_ALIGNAS, rpl_max_align_t, max_align_t): Don't ignore HAVE_MAX_ALIGN_T if the compiler is clang.
Bruno Haible 548423f2 2021-02-08T21:35:14 Document non-standard prototypes on MidnightBSD. * doc/posix-functions/initstate.texi: Mention different prototype on MidnightBSD 2.0. * doc/posix-functions/srandom.texi: Likewise. * doc/posix-functions/getlogin_r.texi: Likewise. * doc/glibc-functions/sethostname.texi: Likewise.
Bruno Haible 5040f712 2021-02-08T21:32:22 posixtm tests: Fix warnings seen on MidnightBSD/x86. * tests/test-posixtm.c (main): Convert two 'time_t' values to 'long' for printing.
Bruno Haible 71a8a22e 2021-02-07T21:33:13 Add cross-compilation guesses for MidnightBSD. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): When cross-compiling, use the result from native compilation. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Likewise. * m4/mbrtoc32.m4 (gl_MBRTOC32_SANITYCHECK): Likewise. * m4/mprotect.m4 (gl_FUNC_MPROTECT_WORKS): Likewise. * m4/posix_spawn.m4 (gl_POSIX_SPAWN_SECURE): Likewise. * m4/printf.m4 (gl_PRINTF_SIZES_C99, gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE, gl_PRINTF_DIRECTIVE_F, gl_SNPRINTF_TRUNCATION_C99, gl_SNPRINTF_RETVAL_C99, gl_SNPRINTF_DIRECTIVE_N, gl_VSNPRINTF_ZEROSIZE_C99): Likewise. * m4/strfmon_l.m4 (gl_FUNC_STRFMON_L): Likewise. * m4/setlocale_null.m4 (gl_FUNC_SETLOCALE_NULL): Use predetermined result on MidnightBSD.
Bruno Haible ae05418d 2021-02-07T20:26:12 threadlib: Add support for MidnightBSD. * m4/threadlib.m4 (gl_WEAK_SYMBOLS, gl_THREADLIB_BODY): On MidnightBSD, use the same test as on FreeBSD.
Bruno Haible 5794cebe 2021-02-07T20:00:55 host-os: Add support for MidnightBSD. * m4/host-os.m4 (gl_HOST_OS): On MidnightBSD, set HOST_OPERATING_SYSTEM to "MidnightBSD", not "Midnightbsd".
Bruno Haible cc0b1d72 2021-02-07T19:55:47 c-stack: Adjust for MidnightBSD. * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): On MidnightBSD, set FAULT_YIELDS_SIGBUS.
Bruno Haible 6563dfc2 2021-02-07T19:31:02 relocatable-prog: Add support for MidnightBSD. * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Use the ELF $ORIGIN trick also on MidnightBSD >= 1.1. * build-aux/config.libpath: Treat MidnightBSD like FreeBSD. * build-aux/reloc-ldflags: Likewise.
Bruno Haible cc6d9794 2021-02-07T19:25:29 havelib: Add support for MidnightBSD. * build-aux/config.rpath: Treat MidnightBSD like FreeBSD >= 4.
Bruno Haible b3f18c63 2021-02-07T17:34:59 wcwidth: Document MidnightBSD bug. * doc/posix-functions/wcwidth.texi: Mention MidnightBSD as an affected platform. * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Update comments.
Bruno Haible 0d42d754 2021-02-07T17:31:24 pthread_sigmask: Document MidnightBSD bug. * doc/posix-functions/pthread_sigmask.texi: Mention MidnightBSD as an affected platform. * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Update cross-compilation guess accordingly.
Bruno Haible 80722800 2021-02-07T17:24:32 immutable: Avoid test failures on MidnightBSD. * tests/test-immutable.c (install_segv_handler): On FreeBSD, install the handler also for SIGBUS.
Bruno Haible d35d912b 2021-02-07T17:17:29 c32is*: Avoid test failures on MidnightBSD. * tests/test-c32isalnum.c (main): On FreeBSD, disable tests that fail on MidnightBSD 1.1. * tests/test-c32isalpha.c (main): Likewise. * tests/test-c32isblank.c (main): Likewise. * tests/test-c32islower.c (main): Likewise. * tests/test-c32isupper.c (main): Likewise.
Paul Eggert a002cbb9 2021-02-05T17:08:45 regex: fix comment location * lib/regexec.c (update_regs): Move comment.
Paul Eggert e3a06e1c 2021-02-05T17:08:39 regex-tests: add bug 11053 test * tests/test-regex.c (main): New test case for glibc bug 11053.
Paul Eggert 7256c713 2021-02-05T17:08:29 regex: debug check for set member duplicates * lib/regex_internal.c (re_node_set_insert): Add a DEBUG_ASSERT that would have caught some recently-fixed performance bugs that caused sets to contain duplicate members.
Paul Eggert 70b673eb 2021-02-05T17:08:10 regex: fix longstanding backref match bug This fixes a longstanding glibc bug concerning backreferences <https://sourceware.org/11053> (2009-12-04). * lib/regexec.c (proceed_next_node, push_fail_stack) (pop_fail_stack): Push and pop the previous registers as well as the current ones. All callers changed. (set_regs): Also pop if CUR_NODE has already been checked, so that it does not get added as a duplicate set entry. (update_regs): Fix comment location. * tests/test-regex.c (tests): New constant. (bug_regex11): New test function. (main): Bump alarm value. Call new test function.
Paul Eggert f5596242 2021-02-05T16:35:46 regex: avoid duplicate in espilon closure * lib/regcomp.c (calc_eclosure_iter): Insert NODE into epsilon closure first rather than last. Otherwise, the epsilon closure might contain a duplicate of NODE.
Paul Eggert a588d480 2021-02-05T16:35:46 regex-tests: fix typo * tests/test-regex.c (main): Fix typo that would have caused an old test case to report incorrect values on failure.
Paul Eggert 388d9432 2021-02-05T16:35:46 regex: make it easier to merge into glibc * lib/regex_internal.h [_LIBC]: Do not include Gnulib’s dynarray.h.
Paul Eggert d6f9ba54 2021-02-05T16:35:45 regex: minor refactoring * lib/regexec.c (proceed_next_node): Use more-local decls.
Paul Eggert 37f2bbbe 2021-02-05T16:35:45 regex: avoid undefined behavior * lib/regexec.c (pop_fail_stack): If the stack is empty, return -1 instead of indulging in undefined behavior. This simplifies callers, and avoids undefined behavior in some cases (see glibc bug 11053, though this change does not fix that overall bug).
Paul Eggert 607c71a6 2021-02-05T16:35:45 regex: improve comments * lib/regexec.c: Add and correct comments about return values.
Bruno Haible 8aea50f4 2021-01-31T14:28:03 relocatable-prog-wrapper: Tweak today's patch. * build-aux/install-reloc (func_create_wrapper): Clean up free.o.
Bruno Haible 7b9b52a9 2021-01-31T13:27:42 fmaf: Document QEMU bug * doc/posix-functions/fmaf.texi: Add note about QEMU bug.
Bruno Haible 4f16dff6 2021-01-31T13:21:24 remainderl: Work around musl libc bug. * doc/posix-functions/remainderl.texi: Document musl libc bug. * m4/remainderl.m4 (gl_FUNC_REMAINDERL_WORKS): Add more tests. Update cross compilation guess.
Bruno Haible 231b5036 2021-01-31T13:20:28 log2l: Work around musl libc bugs. * doc/posix-functions/log2l.texi: Document musl libc bugs. * m4/log2l.m4 (gl_FUNC_LOG2L_WORKS): Add more tests. Update cross compilation guess.
Bruno Haible 6958256b 2021-01-31T13:19:17 log1pl: Work around musl libc bug. * doc/posix-functions/log1pl.texi: Document musl libc bug. * m4/log1pl.m4 (gl_FUNC_LOG1PL_WORKS): New macro. (gl_FUNC_LOG1PL): Invoke it.
Bruno Haible a6be52c6 2021-01-31T13:16:30 log10l: Document musl libc bug. * doc/posix-functions/log10l.texi: Document musl libc bug. * m4/log10l.m4 (gl_FUNC_LOG10L_WORKS): Update comment and cross compilation guess.
Bruno Haible 84d2f6de 2021-01-31T13:15:38 logl: Document musl libc bug. * doc/posix-functions/logl.texi: Document musl libc bug. * m4/logl.m4 (gl_FUNC_LOGL_WORKS): Update comment and cross compilation guess.
Bruno Haible dc25dacc 2021-01-31T13:14:29 expm1l: Document musl libc bug. * doc/posix-functions/expm1l.texi: Document musl libc bug. * m4/expm1l.m4 (gl_FUNC_EXPM1L): Update comment and cross compilation guess.
Bruno Haible db446a33 2021-01-31T13:10:58 expl: Document musl libc bug. * doc/posix-functions/expl.texi: Document musl libc bug. * m4/expl.m4 (gl_FUNC_EXPL): Update comment and cross compilation guess.
Bruno Haible 24446f2d 2021-01-31T12:42:47 relocatable-prog-wrapper: Update after recent changes. * lib/relocwrapper.c: Update comments. * modules/relocatable-prog-wrapper (Files): Add lib/scratch_buffer.h, lib/malloc/scratch_buffer*, lib/malloc.c, lib/realloc.c, lib/free.c, lib/mempcpy.c, lib/rawmemchr.c, m4/lstat.m4. Remove lib/lstat.c. (Depends-on): Add c99, eloop-threshold, fcntl-h, idx, intprops, libc-config, stddef, sys_stat. Remove alloca-opt. (configure.ac): Invoke gl_FUNC_MALLOC_POSIX, gl_FUNC_REALLOC_POSIX, gl_FUNC_FREE, gl_FUNC_MEMPCPY, gl_FUNC_RAWMEMCHR. * lib/canonicalize-lgpl.c (memmove): Undefine in the relocwrapper. * build-aux/install-reloc (func_create_wrapper): Compile also malloc/scratch_buffer_*.c, malloc.c, realloc.c, free.c, mempcpy.c, rawmemchr.c. Don't compile lstat.c.
Bruno Haible a12d5baf 2021-01-31T12:42:33 Make it possible to compile rawmemchr.c separately, unconditionally. * lib/rawmemchr.c: Don't define rawmemchr if not needed.
Bruno Haible 9c86ea67 2021-01-31T12:42:21 Make it possible to compile mempcpy.c separately, unconditionally. * lib/mempcpy.c: Don't define mempcpy if not needed.
Bruno Haible 3dfe86d1 2021-01-31T12:41:33 Make it possible to compile free.c separately, unconditionally. * m4/free.m4 (gl_FUNC_FREE): Define HAVE_FREE_POSIX. * lib/free.c: Don't define rpl_free if not needed.