doc/posix-functions


Log

Author Commit Date CI Message
Bruno Haible bc2d70ee 2025-02-14T15:24:54 newlocale: Work around macOS, NetBSD, Solaris 11 OpenIndiana bug. * m4/newlocale.m4 (gl_FUNC_NEWLOCALE): Test for the "null base" bug. Set REPLACE_NEWLOCALE to 1 if it has the bug. * lib/newlocale.c (newlocale): Add alternative implementation that uses the system's newlocale(). * modules/newlocale (configure.ac): Consider REPLACE_NEWLOCALE. * tests/test-newlocale.c: Include <langinfo.h>. (main): Verify fix for the "null base" bug. * modules/newlocale-tests (configure.ac): Test for nl_langinfo_l. * doc/posix-functions/newlocale.texi: Mention the "null base" bug.
Bruno Haible a5ce928d 2025-02-14T05:56:55 duplocale: Support all platforms. * lib/locale.in.h (duplocale): Declare also on platforms that don't already have a duplocale function. Don't define HAVE_WORKING_DUPLOCALE. * lib/duplocale.c: Include <stdlib.h>. (duplocale): Renamed from rpl_duplocale. Add implementation for platforms without native locale_t. * modules/duplocale (Depends-on): Add newlocale, freelocale. (configure.ac): Compile also on platforms without native locale_t. * tests/test-duplocale.c: Ignore HAVE_WORKING_DUPLOCALE. * tests/test-locale-h-c++.cc: Likewise. * doc/posix-functions/duplocale.texi: Mention the change.
Bruno Haible 414c6c84 2025-02-14T02:59:02 freelocale: New module. * lib/locale.in.h (freelocale): Consider GNULIB_FREELOCALE. Declare if not declared. * lib/freelocale.c: New file. * m4/freelocale.m4: New file. * m4/locale_h.m4 (gl_LOCALE_H_REQUIRE_DEFAULTS): Initialize GNULIB_FREELOCALE. * modules/locale-h (Makefile.am): Substitute GNULIB_FREELOCALE. * modules/freelocale: New file. * tests/test-locale-h-c++.cc: Check declaration of freelocale. * doc/posix-functions/freelocale.texi: Mention the new module.
Bruno Haible f6af6db6 2025-02-13T23:01:52 newlocale: New module. * lib/locale.in.h (newlocale): Consider GNULIB_NEWLOCALE. Declare if not declared. Don't define HAVE_WORKING_NEWLOCALE. * lib/newlocale.c: New file. * m4/newlocale.m4: New file. * m4/locale_h.m4 (gl_LOCALE_H_REQUIRE_DEFAULTS): Initialize GNULIB_NEWLOCALE. * modules/locale-h (Makefile.am): Substitute GNULIB_NEWLOCALE. * modules/newlocale: New file. * tests/test-locale-h-c++.cc: Check declaration of newlocale. * tests/test-localename.c: Ignore HAVE_WORKING_NEWLOCALE. * doc/posix-functions/newlocale.texi: Mention the new module.
Bruno Haible 3906ba18 2025-02-12T23:34:39 getaddrinfo: Support the AI_NUMERICSERV flag. * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require AC_CANONICAL_HOST. Test whether getaddrinfo supports AI_NUMERICSERV. * lib/getaddrinfo.c (getaddrinfo): Accept and implement the AI_NUMERICSERV flag. * tests/test-getaddrinfo.c (simple): In pass 4, pass the AI_NUMERICSERV flag. (main): Test numeric services in pass 1. Add pass 4. * doc/posix-functions/getaddrinfo.texi: Mention the native Windows bug.
KO Myung-Hun 39ed3d9c 2025-02-10T20:35:00 popen: Set gl_cv_func_popen_works to "guessing no" on OS/2. * doc/posix-functions/popen.texi: List OS/2 kLIBC case. * m4/popen.m4 (gl_FUNC_POPEN): Set gl_cv_func_popen_works to "guessing no" on OS/2. Copyright-paperwork-exempt: Yes
Collin Funk d4fa8756 2025-02-08T17:40:48 doc: Document free_aligned_sized and free_sized added in C23. * doc/posix-functions/free_aligned_sized.texi: New file. * doc/posix-functions/free_sized.texi: New file. * doc/gnulib.texi (Functions in <stdlib.h>): Include them.
Paul Eggert a70e47e5 2025-02-08T14:58:51 memalignment: document * doc/gnulib-readme.texi (Other portability assumptions): Mention the C23 function memalignment. * doc/posix-functions/memalignment.texi: New file. * doc/gnulib.texi (Functions in <stdlib.h>): Include it.
Paul Eggert fbaddca3 2025-02-08T14:31:04 doc: some updates for glibc 2.41
Collin Funk f52b2a3d 2025-01-24T21:36:11 ptsname_r: Work around ptsname_r bug on Solaris 11 OmniOS. * lib/ptsname_r.c (ptsname_r): Ensure the resulting buffer is not clobbered if it is too small on Solaris 11 OmniOS. * m4/ptsname_r.m4 (gl_FUNC_PTSNAME_R): On Solaris 11 OmniOS, arrange to override ptsname_r. * doc/posix-functions/ptsname_r.texi: Document the bug.
Bruno Haible 974b4446 2025-01-24T20:06:06 tests: Fix a few compilation errors on Solaris 11 OmniOS with gcc 14. * tests/test-accept.c: Omit the signature check on Solaris. * tests/test-gethostname.c: Likewise. * tests/test-getpeername.c: Likewise. * tests/test-getsockname.c: Likewise. * tests/test-getsockopt.c: Likewise. * tests/test-recvfrom.c: Likewise. * doc/posix-functions/accept.texi: Mention the Solaris 11 OmniOS problem. * doc/posix-functions/gethostname.texi: Likewise. * doc/posix-functions/getpeername.texi: Likewise. * doc/posix-functions/getsockname.texi: Likewise. * doc/posix-functions/getsockopt.texi: Likewise. * doc/posix-functions/recvfrom.texi: Likewise.
Collin Funk 82c416d7 2025-01-18T18:00:55 linkat tests: Revert the last change. * tests/test-linkat.c (main): Disallow EINVAL an alternative error value. * doc/posix-functions/linkat.texi: Document the GNU/Hurd bug.
Paul Eggert 5a2d28df 2025-01-13T10:17:21 fts, savedir: avoid glibc 2.2 readdir ENOENT bug This is mostly to document the bug. If these old platforms were still common I suppose we should change the readdir module to work around it. However, I’m not sure it’s worth the hassle at this point. * doc/posix-functions/readdir.texi, doc/posix-functions/readdir_r.texi: Document the bug. * lib/fts.c (fts_build): * lib/savedir.c (streamsavedir): Work around it.
Paul Eggert 66080623 2025-01-10T10:34:58 doc: document some file system portability issues * doc/glibc-functions/flistxattr.texi: * doc/glibc-functions/listxattr.texi: * doc/glibc-functions/llistxattr.texi: * doc/posix-functions/fchdir.texi, doc/posix-functions/fstat.texi: * doc/posix-functions/fstatvfs.texi: Document some portability gotchas that Gnulib does not work around.
Bruno Haible 53cf0bab 2025-01-08T22:39:36 pselect: Document this module. * doc/posix-functions/pselect.texi: Document module 'pselect'.
Collin Funk 71fbdb50 2025-01-06T13:56:40 servent tests: Fix failure on 32-bit native Windows. * tests/test-servent.c (getservbyname, getservbyport) [_WIN64 && !__CYGWIN__]: Disable signature check. * doc/posix-functions/getservbyname.texi: Document the incompatible __stdcall function signature. * doc/posix-functions/getservbyport.texi: Likewise.
Paul Eggert b1715e52 2025-01-05T17:45:41 utimensat: mention Linux kernel bug with CIFS * doc/posix-functions/utimensat.texi (utimensat): Mention Linux kernel bug reported by Bruno Haible in: https://lists.gnu.org/r/bug-tar/2024-12/msg00004.html
Bruno Haible 4b3bf87e 2025-01-06T01:16:11 sigsegv tests: Work around a longjmp bug on GNU/Hurd. * tests/test-sigsegv-catch-stackoverflow1.c (_FORTIFY_SOURCE, __USE_FORTIFY_LEVEL): Undefine, as a workaround to the Hurd longjmp bug. * tests/test-sigsegv-catch-stackoverflow2.c (_FORTIFY_SOURCE, __USE_FORTIFY_LEVEL): Likewise. * doc/posix-functions/longjmp.texi: Document the Hurd bug.
Bruno Haible c828e762 2024-12-29T23:06:06 qsort_r: Update documentation. * modules/qsort_r (Description): Say "POSIX signature". * doc/posix-functions/qsort_r.texi: Mention the qsort_r module.
Bruno Haible 83ebf44f 2024-12-29T21:15:16 sig2str: Document a portability problem. * doc/posix-functions/sig2str.texi: Document IRIX problem. * doc/posix-functions/str2sig.texi: Likewise.
Collin Funk 1d1888d0 2024-12-28T18:11:03 doc: Add missing module index. Suggested by Bruno Haible in: <https://lists.gnu.org/archive/html/bug-gnulib/2024-12/msg00240.html>. * doc/posix-functions/getservbyname.texi (getservbyname): Add module index. * doc/posix-functions/getservbyport.texi (getservbyport): Likewise.
Collin Funk 4beb431a 2024-12-28T17:26:28 doc: Fix the previous commit. Suggested by Bruno Haible in: <https://lists.gnu.org/archive/html/bug-gnulib/2024-12/msg00236.html>. * doc/posix-functions/getservbyname.texi: Mention the Windows declaration under "Portability problems fixed by Gnulib". * doc/posix-functions/getservbyport.texi: Likewise.
Collin Funk 2d1c0b2f 2024-12-28T16:19:01 doc: Mention the servent module. * doc/posix-functions/getservbyname.texi: Document that the servent module will provide the declarations in netdb.h. * doc/posix-functions/getservbyport.texi: Likewise.
Bruno Haible 2a99a564 2024-12-27T23:41:53 Rename module unistd to unistd-h. * modules/unistd-h: Renamed from modules/unistd. * modules/unistd-h-tests: Renamed from modules/unistd-tests. * modules/unistd-h-c++-tests: Renamed from modules/unistd-c++-tests. * tests/test-unistd-h.c: Renamed from tests/test-unistd.c. * tests/test-unistd-h-c++.cc: Renamed from tests/test-unistd-c++.cc. * doc/posix-headers/unistd.texi: Update. * doc/posix-functions/_exit.texi: Update. * modules/* (Depends-on): Update. * modules/unistd: New file.
Bruno Haible 29fe4ac2 2024-12-27T23:41:52 Rename module uchar-c23 to uchar-h-c23. * modules/uchar-h-c23: Renamed from modules/uchar-c23. * lib/uchar.in.h: Update. * doc/posix-headers/uchar.texi: Update. * doc/posix-functions/mbrtoc32.texi: Update. * doc/strings.texi: Update. * modules/* (Depends-on): Update. * modules/uchar-c23: New file.
Bruno Haible 984cbda2 2024-12-27T23:40:10 Rename module sys_stat to sys_stat-h. * modules/sys_stat-h: Renamed from modules/sys_stat. * modules/sys_stat-h-tests: Renamed from modules/sys_stat-tests. * modules/sys_stat-h-c++-tests: Renamed from modules/sys_stat-c++-tests. * tests/test-sys_stat-h.c: Renamed from tests/test-sys_stat.c. * tests/test-sys_stat-h-c++.cc: Renamed from tests/test-sys_stat-c++.cc. * doc/posix-headers/sys_stat.texi: Update. * doc/posix-functions/mkdir.texi: Update. * modules/* (Depends-on): Update. * modules/sys_stat: New file.
Bruno Haible d93e96eb 2024-12-27T23:37:59 Rename module string to string-h. * modules/string-h: Renamed from modules/string. * modules/string-h-tests: Renamed from modules/string-tests. * modules/string-h-c++-tests: Renamed from modules/string-c++-tests. * tests/test-string-h.c: Renamed from tests/test-string.c. * tests/test-string-h-c++.cc: Renamed from tests/test-string-c++.cc. * tests/test-string-h-c++2.cc: Renamed from tests/test-string-c++2.cc. * doc/posix-headers/string.texi: Update. * doc/posix-functions/strcat.texi: Update. * doc/posix-functions/strcpy.texi: Update. * doc/posix-functions/strncpy.texi: Update. * modules/* (Depends-on): Update. * modules/string: New file.
Bruno Haible 60e90236 2024-12-27T23:28:45 Rename module stdlib to stdlib-h. * modules/stdlib-h: Renamed from modules/stdlib. * modules/stdlib-h-tests: Renamed from modules/stdlib-tests. * modules/stdlib-h-c++-tests: Renamed from modules/stdlib-c++-tests. * tests/test-stdlib-h.c: Renamed from tests/test-stdlib.c. * tests/test-stdlib-h-c++.cc: Renamed from tests/test-stdlib-c++.cc. * tests/test-stdlib-h-c++2.cc: Renamed from tests/test-stdlib-c++2.cc. * doc/posix-headers/stdlib.texi: Update. * doc/posix-functions/exit.texi: Update. * modules/* (Depends-on): Update. * modules/stdlib: New file.
Bruno Haible a9525771 2024-12-27T23:24:51 Rename module stdio to stdio-h. * modules/stdio-h: Renamed from modules/stdio. * modules/stdio-h-tests: Renamed from modules/stdio-tests. * modules/stdio-h-c++-tests: Renamed from modules/stdio-c++-tests. * tests/test-stdio-h.c: Renamed from tests/test-stdio.c. * tests/test-stdio-h-c++.cc: Renamed from tests/test-stdio-c++.cc. * tests/test-stdio-h-c++2.cc: Renamed from tests/test-stdio-c++2.cc. * doc/posix-headers/stdio.texi: Update. * doc/posix-functions/fgetc.texi: Update. * doc/posix-functions/fgets.texi: Update. * doc/posix-functions/fprintf.texi: Update. * doc/posix-functions/fputc.texi: Update. * doc/posix-functions/fputs.texi: Update. * doc/posix-functions/fread.texi: Update. * doc/posix-functions/fscanf.texi: Update. * doc/posix-functions/fwrite.texi: Update. * doc/posix-functions/getc.texi: Update. * doc/posix-functions/getchar.texi: Update. * doc/posix-functions/printf.texi: Update. * doc/posix-functions/putc.texi: Update. * doc/posix-functions/putchar.texi: Update. * doc/posix-functions/puts.texi: Update. * doc/posix-functions/read.texi: Update. * doc/posix-functions/scanf.texi: Update. * doc/posix-functions/vfprintf.texi: Update. * doc/posix-functions/vprintf.texi: Update. * doc/posix-functions/write.texi: Update. * modules/* (Depends-on): Update. * modules/stdio: New file.
Bruno Haible dc2b5a62 2024-12-27T23:18:08 Rename module stdarg to stdarg-h. * modules/stdarg-h: Renamed from modules/stdarg. * modules/stdarg-h-tests: Renamed from modules/stdarg-tests. * modules/stdarg-h-c++-tests: Renamed from modules/stdarg-c++-tests. * tests/test-stdarg-h-c++.cc: Renamed from tests/test-stdarg-c++.cc. * tests/test-stdarg-h-c++2.cc: Renamed from tests/test-stdarg-c++2.cc. * doc/posix-headers/stdarg.texi: Update. * doc/posix-functions/va_copy.texi: Update. * modules/* (Depends-on): Update. * modules/stdarg: New file.
Bruno Haible a4c8dd21 2024-12-26T07:21:51 doc: Document the *-ieee modules. * doc/posix-functions/cbrt.texi: Mention the cbrt-ieee module. * doc/posix-functions/cbrtf.texi: Mention the cbrtf-ieee module. * doc/posix-functions/exp.texi: Mention the exp-ieee module. * doc/posix-functions/exp2.texi: Mention the exp2-ieee module. * doc/posix-functions/exp2f.texi: Mention the exp2f-ieee module. * doc/posix-functions/expf.texi: Mention the expf-ieee module. * doc/posix-functions/expl.texi: Mention the expl-ieee module. * doc/posix-functions/expm1l.texi: Mention the expm1l-ieee module. * doc/posix-functions/fabs.texi: Mention the fabs-ieee module. * doc/posix-functions/fabsf.texi: Mention the fabsf-ieee module. * doc/posix-functions/fabsl.texi: Mention the fabsl-ieee module. * doc/posix-functions/fma.texi: Mention the fma-ieee module. * doc/posix-functions/fmaf.texi: Mention the fmaf-ieee module. * doc/posix-functions/fmal.texi: Mention the fmal-ieee module. * doc/posix-functions/frexp.texi: Mention the frexp-ieee module. * doc/posix-functions/frexpf.texi: Mention the frexpf-ieee module. * doc/posix-functions/frexpl.texi: Mention the frexpl-ieee module. * doc/posix-functions/ldexp.texi: Mention the ldexp-ieee module. * doc/posix-functions/ldexpf.texi: Mention the ldexpf-ieee module. * doc/posix-functions/ldexpl.texi: Mention the ldexpl-ieee module. * doc/posix-functions/log10l.texi: Mention the log10l-ieee module. * doc/posix-functions/log2l.texi: Mention the log2l-ieee module. * doc/posix-functions/logb.texi: Mention the logb-ieee module. * doc/posix-functions/logbf.texi: Mention the logbf-ieee module. * doc/posix-functions/logbl.texi: Mention the logbl-ieee module. * doc/posix-functions/logl.texi: Mention the logl-ieee module. * doc/posix-functions/rint.texi: Mention the rint-ieee module. * doc/posix-functions/rintf.texi: Mention the rintf-ieee module. * doc/posix-functions/rintl.texi: Mention the rintl-ieee module. * doc/posix-functions/sqrt.texi: Mention the sqrt-ieee module. * doc/posix-functions/sqrtf.texi: Mention the sqrtf-ieee module. * doc/posix-functions/sqrtl.texi: Mention the sqrtl-ieee module.
Bruno Haible 1480501f 2024-12-24T14:45:58 doc: Document mingw with MSVCRT vs. mingw with UCRT. * doc/posix-functions/btowc.texi: Add more details regarding mingw. * doc/posix-functions/fopen.texi: Likewise. * doc/posix-functions/mbrtowc.texi: Likewise. * doc/posix-functions/mbsinit.texi: Likewise. * doc/posix-functions/modf.texi: Likewise. * doc/posix-functions/modff.texi: Likewise. * doc/posix-functions/round.texi: Likewise. * doc/posix-functions/roundf.texi: Likewise. * doc/posix-functions/swprintf.texi: Likewise. * doc/posix-functions/timespec_get.texi: Likewise. * doc/posix-functions/wcrtomb.texi: Likewise.
Paul Eggert 2e8033f5 2024-12-12T23:01:14 atexit: document z/OS bug * doc/posix-functions/atexit.texi: Mention z/OS issue raised by Sachin <https://bugs.gnu.org/74788>.
Paul Eggert dc1766ba 2024-12-11T12:24:09 doc: fix typo in previous patch
Paul Eggert 9780a7b2 2024-12-11T12:17:18 doc: isdigit and isxdigit are locale-independent * doc/posix-functions/isdigit.texi: * doc/posix-functions/isxdigit.texi: Document that mingw and MSVC do not conform to the C standard, which says that isdigit and isxdigit are independent of locale. Issue pointed out by Florian Weimer in: https://sourceware.org/pipermail/libc-alpha/2024-December/162362.html
Paul Eggert da131735 2024-11-19T18:29:57 savewd: remove O_SEARCH optimization * lib/savewd.c (savewd_save): Remove recently-added optimization for platforms with O_SEARCH, as it does not work on macOS 12.6 due to what seems to be a bug there.
Paul Eggert 74f3ed88 2024-11-19T09:11:22 doc: mention strtol no-conversion + EINVAL
Collin Funk 2d08d875 2024-11-17T13:05:55 doc: Prefer https urls where possible. * doc/gnulib.texi (POSIXURL): Use https url. * doc/multithread.texi: Use https instead of http where possible. * doc/glibc-functions/*.texi: Likewise. * doc/posix-functions/*.texi: Likewise. * lib/glthread/lock.c: Likewise. * lib/hamt.h: Likewise. * lib/localcharset.c: Likewise. * lib/pipe2.c: Likewise. * lib/pipe.c: Likewise. * lib/sigsegv.c: Likewise. * lib/sigsegv.in.h: Likewise. * lib/sm3.c: Likewise. * lib/sm3.h: Likewise. * lib/sm3-stream.c: Likewise. * lib/stackvma.c: Likewise. * lib/stdio-impl.h: Likewise. * lib/stdnoreturn.in.h: Likewise. * m4/getopt.m4: Likewise. * m4/largefile.m4: Likewise. * m4/stdalign.m4: Likewise. * STATUS-libposix: Likewise. * tests/test-float.c: Likewise. * tests/test-getopt.h: Likewise. * tests/test-setenv.c: Likewise. * tests/test-spawn-pipe-child.c: Likewise. * tests/test-strerror.c: Likewise. * tests/test-strerror_r.c: Likewise. * tests/test-unsetenv.c: Likewise. * users.txt: Likewise.
Paul Eggert be8a5aef 2024-11-06T12:32:27 Document xstdopen vs *-safer better
Paul Eggert af7386f1 2024-11-05T15:57:20 doc: improve documentation for malloc, realloc etc
Bruno Haible 101b9d7f 2024-11-05T21:11:33 wcsncat: Guarantee N3322 functionality. * lib/wchar.in.h (wcsncat): Consider REPLACE_WCSNCAT. * m4/wcsncat.m4 (gl_FUNC_WCSNCAT): Test whether the zero-length bug is present. * m4/wchar_h.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCSNCAT. * modules/wchar (Makefile.am): Substitute REPLACE_WCSNCAT. * modules/wcsncat (Status, Notice): Remove. (configure.ac): Consider REPLACE_WCSNCAT. * doc/posix-functions/wcsncat.texi: Mention the zero-length bug.
Bruno Haible 5e713ecd 2024-11-05T21:11:12 strncmp tests: Verify N3322 functionality. * modules/strncmp: New file. * doc/posix-functions/strncmp.texi: Mention the new module. * tests/test-strncmp.c: New file. * modules/strncmp-tests: New file.
Bruno Haible bf799ba1 2024-11-05T21:10:20 strndup: Guarantee N3322 functionality. * m4/strndup.m4 (gl_FUNC_STRNDUP): Check against the AIX bug. * doc/posix-functions/strndup.texi: Mention the AIX bug.
Bruno Haible 2590ea7f 2024-11-05T21:10:13 strncpy tests: Verify N3322 functionality. * modules/strncpy: New file. * doc/posix-functions/strncpy.texi: Mention the new module. * tests/test-strncpy.c: New file. * modules/strncpy-tests: New file.
Bruno Haible bda6e6a0 2024-11-05T21:10:08 memccpy tests: Verify N3322 functionality. * modules/memccpy: New file. * doc/posix-functions/memccpy.texi: Mention the new module. * tests/test-memccpy.c: New file. * modules/memccpy-tests: New file.
Bruno Haible d3c9d629 2024-11-05T21:10:02 qsort tests: Verify N3322 functionality. * modules/qsort: New file. * doc/posix-functions/qsort.texi: Mention the new module. * tests/test-qsort.c: New file. * modules/qsort-tests: New file.
Bruno Haible bc91828e 2024-11-05T21:09:07 bsearch tests: Verify N3322 functionality. * modules/bsearch: New file. * doc/posix-functions/bsearch.texi: Mention the new module. * tests/test-bsearch.c: New file. * modules/bsearch-tests: New file.
Paul Eggert 778c0a96 2024-11-04T19:09:08 realloc-posix: update doc * doc/posix-functions/realloc.texi: Update to match recent Gnulib changes and OS discoveries, and to clarify and simplify by coalescing behaviors (4) and (5).
Paul Eggert 81c855d6 2024-11-04T18:24:07 doc: mention Solaris malloc ENOMEM issues
Paul Eggert d884e6fc 2024-11-03T22:41:41 realloc-posix: realloc (..., 0) now returns nonnull * lib/realloc.c (rpl_realloc): Simplify and tune by using HAVE_REALLOC_0_NONNULL and HAVE_MALLOC_PTRDIFF, and by having just one call to realloc instead of two. * lib/reallocarray.c (reallocarray): Simplify and tune by delegating the zero case to the revised realloc. * m4/eealloc.m4 (_AC_FUNC_REALLOC_IF): Since only eealloc uses this macro now, move its definition here ... * m4/realloc.m4: ... from here. (gl_FUNC_REALLOC_0_NONNULL): Also check that realloc (p, 0) returns nonnull. Require gl_FUNC_REALLOC_POSIX. Define HAVE_REALLOC_0_NONNULL. * m4/reallocarray.m4 (gl_FUNC_REALLOCARRAY): Also replace reallocarray if it returns a null pointer for size zero. * modules/eealloc (Files): Remove m4/realloc.m4. * modules/realloc-posix (Depends-on): Add extensions-aix. * modules/reallocarray (Files): Add m4/realloc.m4.
Paul Eggert 9a4319ca 2024-11-03T21:44:15 realloc: don’t require success for nongrowth * lib/realloc.c (rpl_realloc): Do not require realloc (p, 0) to succeed, as apparently glibc realloc (p, n) can sometimes fail even when the region would not grow.
Bruno Haible a1da46a0 2024-11-04T17:50:09 aligned_alloc: Fix test failures on macOS, Solaris (regr. 2024-10-30). * m4/aligned_alloc.m4 (gl_FUNC_ALIGNED_ALLOC): Check for the Solaris bug. Let the test program return a bit mask. Update cross-compilation guesses. * lib/aligned_alloc.c: Include <errno.h>. (aligned_alloc): Fail if the alignment is not a power of 2. Work around the Solaris bug. * modules/aligned_alloc (Depends-on): Add malloc-posix. * doc/posix-functions/aligned_alloc.texi: Mention the Solaris bug.
Bruno Haible 108fd1f9 2024-11-01T23:04:06 select: Document a Haiku bug. * doc/posix-functions/select.texi: Mention a Haiku bug.
Bruno Haible d4b58071 2024-10-30T23:21:04 futimes, utimensat, utimes, utime: Document Haiku malfunction. * doc/posix-functions/futimens.texi: Mention Haiku's brokenness. * doc/posix-functions/utimensat.texi: Likewise. * doc/posix-functions/utimes.texi: Likewise. * doc/pastposix-functions/utime.texi: Likewise.
Paul Eggert 99bbb61c 2024-10-30T12:47:02 posix_memalign: check for GNU behavior with size 0 * lib/posix_memalign.c: Include stdckdint.h. (posix_memalign): Test for overflow more straightforwardly, and more portably to unlikely platforms where SIZE_MAX <= INT_MAX. Treat a zero size as if it were alignment. * m4/posix_memalign.m4 (gl_FUNC_POSIX_MEMALIGN): * tests/test-posix_memalign.c (main): Test zero size too. Use volatile to avoid compiler optimizations. * modules/posix_memalign (Depends-on): Add stdckdint.
Paul Eggert e6108a3b 2024-10-30T11:54:57 aligned_alloc: check for GNU behavior with size 0 If someone ever needs to distinguish between GNU and merely POSIX behavior we can split this into two modules, but for now just make this module act like GNU. * lib/aligned_alloc.c (aligned_alloc): Treat zero size like GNU. * m4/aligned_alloc.m4 (gl_FUNC_ALIGNED_ALLOC): * tests/test-aligned_alloc.c (main): Test zero size too.
Paul Eggert c8bda093 2024-10-29T22:01:43 malloc: fix recent doc bug for AIX 7.3 * doc/posix-functions/malloc.texi: Undo previous change, as _LINUX_SOURCE_COMPAT no longer affects malloc on AIX 7.3. It did affect it in AIX 7.1 but 7.1 is no longer supported.
Bruno Haible 6659e016 2024-10-28T00:18:35 realloc-gnu: Replace module with an alias to realloc-posix. * tests/test-realloc-posix.c: Renamed from tests/test-realloc-gnu.c. Add more tests, not yet activated. * modules/realloc-posix-tests: Renamed from modules/realloc-gnu-tests. Test test-realloc-posix instead of test-realloc-gnu. * modules/realloc-gnu: Mark as a deprecated alias of 'realloc-posix'. * lib/stdlib.in.h (realloc): Ignore GNULIB_REALLOC_GNU. * modules/stdlib (Makefile.am): Don't substitute GNULIB_REALLOC_GNU, REPLACE_REALLOC_FOR_REALLOC_GNU. * m4/stdlib_h.m4 (gl_STDLIB_H_REQUIRE_DEFAULTS): Don't initialize GNULIB_REALLOC_GNU. (gl_STDLIB_H_DEFAULTS): Don't initialize REPLACE_REALLOC_FOR_REALLOC_GNU. * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): Remove macro. * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): Update comment. * doc/posix-functions/realloc.texi: Remove description of module 'realloc-gnu'. * MODULES.html.sh (Memory management functions <stdlib.h>): Remove realloc-gnu. Add realloc-posix.
Bruno Haible c36a0f21 2024-10-27T17:01:29 doc: Add a module index. * doc/Makefile (undocumented-modules.texi): New rule. (%.info, %.html, %.dvi, %.pdf): Depend on undocumented-modules.texi. (mostlyclean): Remove also *.m and *.tmp. (force): New rule. * doc/*.texi: Add module index entries. * doc/*/*.texi: Likewise.
Paul Eggert f0fa8fa3 2024-10-26T10:06:55 aligned_alloc: document glibc bug 32301 * doc/posix-functions/aligned_alloc.texi: * doc/posix-functions/posix_memalign.texi: Mention glibc bug 32301, which it is not worth our time to work around.
Paul Eggert 4d7d5e42 2024-10-23T13:51:29 realloc: still more improvements for realloc (p, 0) * doc/posix-functions/malloc.texi: AIX is sans _LINUX_SOURCE_COMPAT. * doc/posix-functions/realloc.texi: Give more details about what recent POSIX versions say, and fix some misperceptions about C89 through C11. Document that the GNU behavior does not conform to POSIX, and that AIX's behavior with _LINUX_SOURCE_COMPAT matches glibc's circa 1999 behavior, not its current behavior. Be a little less confident about realloc-gnu, since it doesn't fully implement current glibc behavior. Give more details about when memory leaks or false positives can occur. * doc/posix-functions/reallocarray.texi: Say that it shares realloc’s woes with zero sizes.
Paul Eggert 6af4a4ef 2024-10-19T14:18:49 realloc: more improvements for realloc (p, 0) * doc/posix-functions/realloc.texi (realloc): Document more realloc (p, 0) gotchas: evolution of C standards, errno values, which glibc versions do what, how programs might misbehave, what happens when not growing.
Bruno Haible c788fd5b 2024-10-19T14:23:39 realloc: Improve documentation. * doc/posix-functions/realloc.texi: Regarding realloc(p,0), document what the platforms actually do, not merely theoretical possibilities.
Bruno Haible 336a4d57 2024-09-24T12:30:54 sf-istream: New module. * lib/sf-istream.h: New file. * lib/sf-istream.c: New file. * modules/sf-istream: New file. * doc/posix-functions/fmemopen.texi: Mention the new module.
Paul Eggert 78b776d8 2024-09-16T15:32:17 fflush: NetBSD, OpenBSD can’t fflush input * m4/fflush.m4 (gl_FUNC_FFLUSH_STDIN): Guess no on NetBSD and OpenBSD; they document fflush to fail unless the stream is open for writing.
Bruno Haible 6db3edf9 2024-09-04T10:21:31 Doc regarding functions introduced in Android API level 35. * doc/posix-functions/_Fork.texi: Mention the Android API levels. * doc/glibc-functions/epoll_pwait2.texi: Likewise. * doc/glibc-functions/strerrorname_np.texi: Likewise.
Bruno Haible 9654cddd 2024-09-03T13:32:40 unlockpt tests: Avoid test failure on Haiku. * tests/test-unlockpt.c (main): Skip the test on Haiku. * doc/posix-functions/unlockpt.texi: Update platforms list.
Bruno Haible 8d01d29d 2024-09-03T11:34:11 doc: Mention a gmtime_r problem. * doc/posix-functions/gmtime_r.texi: Mention "UTC" vs. "GMT".
Bruno Haible 4db9e75b 2024-09-01T23:25:42 strtold: Work around a Haiku bug. * lib/strtod.c (HAVE_UNDERLYING_STRTOD): Set to 0 for 'long double' parsing on Haiku. * doc/posix-functions/strtold.texi: Mention the bug.
Bruno Haible b9927fb5 2024-09-01T13:09:59 Fix mbscasestr test failure on native Windows with MSVC. * lib/c32to-impl.h (FUNC): On native Windows, ignore the system's towlower/towupper function entirely. * tests/test-c32tolower.c (main): On native Windows, reenable test that previously failed. * tests/test-c32toupper.c (main): Likewise. Disable two other tests on native Windows. * doc/posix-functions/towlower.texi: Mention bug in the native Windows UTF-8 locale. * doc/posix-functions/towupper.texi: Likewise.
Bruno Haible 2b573a89 2024-09-01T11:21:43 doc: Mention how to obtain UTF-8 locales. * doc/posix-functions/setlocale.texi: Mention the names of UTF-8 locales and the needed compiler flags.
Bruno Haible cc08d989 2024-09-01T00:12:54 iswxdigit: Work around OpenBSD, Android, Haiku bug. * m4/iswxdigit.m4 (gl_FUNC_ISWXDIGIT): Require gt_LOCALE_EN_UTF8 instead of gt_LOCALE_FR_UTF8. Use LOCALE_EN_UTF8 instead of LOCALE_FR_UTF8. Update cross-compilation guess. * modules/iswxdigit (Files): Add m4/locale-en.m4. Remove m4/locale-fr.m4. * doc/posix-functions/iswxdigit.texi: Update list of platforms.
Bruno Haible 602a6728 2024-09-01T00:11:12 iswdigit: Work around OpenBSD, Android, Haiku bug. * m4/iswdigit.m4 (gl_FUNC_ISWDIGIT): Require gt_LOCALE_EN_UTF8 instead of gt_LOCALE_FR_UTF8. Use LOCALE_EN_UTF8 instead of LOCALE_FR_UTF8. Update cross-compilation guess. * modules/iswdigit (Files): Add m4/locale-en.m4. * doc/posix-functions/iswdigit.texi: Update list of platforms.
Bruno Haible 7a26219d 2024-08-31T01:28:32 mkfifoat: Work around a Haiku bug. * lib/mknodat.c (rpl_mknodat): On Haiku, handle S_IFIFO explicitly. * doc/posix-functions/mknodat.texi: Mention the S_IFIFO flag bug.
Bruno Haible 189662f6 2024-08-31T01:20:50 doc: Mention an mknod bug. * doc/posix-functions/mknod.texi: Mention the S_IFIFO flag bug.
Bruno Haible e4415488 2024-08-27T18:45:22 doc: Update about psignal. Reported by Eric Gallager <egall@gwmail.gwu.edu> in <https://lists.gnu.org/archive/html/bug-gnulib/2024-08/msg00177.html>. * doc/posix-functions/psignal.texi: Mention the Solaris problem and the first parameter type.
Bruno Haible 841eaf11 2024-08-11T21:01:38 doc: Update regarding Windows <winsock2.h> functions. * doc/posix-functions/accept.texi: Mention that it's declared elsewhere on native Windows. * doc/posix-functions/bind.texi: Likewise. * doc/posix-functions/connect.texi: Likewise. * doc/posix-functions/getpeername.texi: Likewise. * doc/posix-functions/getsockname.texi: Likewise. * doc/posix-functions/getsockopt.texi: Likewise. * doc/posix-functions/listen.texi: Likewise. * doc/posix-functions/recv.texi: Likewise. * doc/posix-functions/recvfrom.texi: Likewise. * doc/posix-functions/select.texi: Likewise. * doc/posix-functions/send.texi: Likewise. * doc/posix-functions/sendto.texi: Likewise. * doc/posix-functions/setsockopt.texi: Likewise. * doc/posix-functions/shutdown.texi: Likewise. * doc/posix-functions/socket.texi: Likewise. * doc/pastposix-functions/gethostbyaddr.texi: Don't say that the function is missing on native Windows. * doc/pastposix-functions/gethostbyname.texi: Likewise. * doc/posix-functions/getprotobyname.texi: Likewise. * doc/posix-functions/getprotobynumber.texi: Likewise. * doc/posix-functions/getservbyname.texi: Likewise. * doc/posix-functions/getservbyport.texi: Likewise. * doc/posix-functions/htonl.texi: Likewise. * doc/posix-functions/htons.texi: Likewise. * doc/posix-functions/inet_addr.texi: Likewise. * doc/posix-functions/inet_ntoa.texi: Likewise. * doc/posix-functions/ntohl.texi: Likewise. * doc/posix-functions/ntohs.texi: Likewise. * doc/posix-functions/gethostname.texi: Update.
Collin Funk e289cd10 2024-08-10T17:15:07 htonl: New module. * modules/htonl: New file. * lib/arpa_inet.c: New file. * m4/htonl.m4: New file. * modules/arpa_inet (Files): Add lib/arpa_inet.c. (Depends-on): Add extern-inline. * lib/arpa_inet.in.h (htons, htonl, ntohs, ntohl): New declarations. * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Define REPLACE_HTONL. * doc/posix-functions/htons.texi (htons): Mention the module. * doc/posix-functions/htonl.texi (htonl): Likewise. * doc/posix-functions/ntohs.texi (ntohs): Likewise. * doc/posix-functions/ntohl.texi (ntohl): Likewise.
Bruno Haible 94add22a 2024-08-09T22:18:16 sig2str: Align with POSIX:2024. * lib/signal.in.h (SIG2STR_MAX): New macro. (sig2str, str2sig): New declarations. * lib/sig2str.h: Don't include intprops.h. (SIG2STR_MAX): Remove macro. (sig2str, str2sig): Remove declarations. * lib/sig2str.c: Include <signal.h> as the specification header. * m4/signal_h.m4 (gl_SIGNAL_H): Test whether sig2str, str2sig are declared. (gl_SIGNAL_H_REQUIRE_DEFAULTS): Initialize GNULIB_SIG2STR. (gl_SIGNAL_H_DEFAULTS): Initialize HAVE_SIG2STR, HAVE_STR2SIG. * m4/sig2str.m4 (gl_FUNC_SIG2STR): Require gl_SIGNAL_H_DEFAULTS. Check also for str2sig. Set HAVE_SIG2STR, HAVE_STR2SIG. * modules/signal-h (Makefile.am): Substitute GNULIB_SIG2STR, HAVE_SIG2STR, HAVE_STR2SIG. * modules/sig2str (Depends-on): Add signal-h. Remove intprops. (configure.ac): Test HAVE_SIG2STR, HAVE_STR2SIG. Invoke gl_SIGNAL_MODULE_INDICATOR. (Include): Add <signal.h>. * doc/posix-functions/sig2str.texi: Mention as implemented through the sig2str module. * doc/posix-functions/str2sig.texi: Likewise.
Paul Eggert 720ddf92 2024-08-09T14:03:44 test-utime: port to noatime file systems Problem encountered on Ubuntu 24.04 zfs mounted noatime. * tests/test-fdutimensat.c (main): * tests/test-futimens.h (test_futimens): * tests/test-lutimens.h (test_lutimens): * tests/test-utime.c (test_utime): * tests/test-utimens-common.h (checkable_atime): New function. * tests/test-utimens.h (test_utimens): * tests/test-utimensat.c (main): Do not check atime on file systems mounted noatime.
Bruno Haible 81868618 2024-08-09T02:09:03 doc: Update for other functions added in POSIX:2024. * doc/posix-functions/be16toh.texi: New file. * doc/posix-functions/be32toh.texi: New file. * doc/posix-functions/be64toh.texi: New file. * doc/posix-functions/dcgettext_l.texi: New file. * doc/posix-functions/dcngettext_l.texi: New file. * doc/posix-functions/dgettext_l.texi: New file. * doc/posix-functions/dngettext_l.texi: New file. * doc/posix-functions/getlocalename_l.texi: New file. * doc/posix-functions/gettext_l.texi: New file. * doc/posix-functions/htobe16.texi: New file. * doc/posix-functions/htobe32.texi: New file. * doc/posix-functions/htobe64.texi: New file. * doc/posix-functions/htole16.texi: New file. * doc/posix-functions/htole32.texi: New file. * doc/posix-functions/htole64.texi: New file. * doc/posix-functions/le16toh.texi: New file. * doc/posix-functions/le32toh.texi: New file. * doc/posix-functions/le64toh.texi: New file. * doc/posix-functions/ngettext_l.texi: New file. * doc/posix-functions/posix_close.texi: New file. * doc/posix-functions/posix_devctl.texi: New file. * doc/posix-functions/posix_getdents.texi: New file. * doc/posix-functions/posix_spawn_file_actions_addchdir.texi: New file. * doc/posix-functions/posix_spawn_file_actions_addfchdir.texi: New file. * doc/posix-functions/sig2str.texi: New file. * doc/posix-functions/str2sig.texi: New file. * doc/posix-functions/tcgetwinsize.texi: New file. * doc/posix-functions/tcsetwinsize.texi: New file. * doc/posix-functions/wcslcat.texi: New file. * doc/posix-functions/wcslcpy.texi: New file. * doc/gnulib.texi (Functions in <devctl.h>, Functions in <endian.h>): New sections. (Functions in <dirent.h>, Functions in <libintl.h>, Functions in <locale.h>, Functions in <signal.h>, Functions in <spawn.h>, Functions in <termios.h>, Functions in <unistd.h>, Functions in <wchar.h>): Include the other new files. * doc/posix-functions/strlcat.texi: Update. * doc/posix-functions/strlcpy.texi: Update.
Bruno Haible a9319d2f 2024-08-09T00:15:16 doc: Update for ISO C functions added in POSIX:2024. * doc/posix-headers/CMPLX*.texi: New files. * doc/posix-headers/at_quick_exit.texi: New file. * doc/posix-headers/atomic_*.texi: New files. * doc/posix-headers/kill_dependency.texi: New file. * doc/posix-headers/*.texi: Update. * doc/gnulib.texi (Functions in <stdatomic.h>): New section. (Functions in <complex.h>, Functions in <stdlib.h>): Include the other new files.
Bruno Haible b323c0c4 2024-08-08T16:15:20 doc: Update for Cygwin 3.5.3. * doc/posix-headers/*.texi: Update. * doc/posix-functions/*.texi: Likewise. * doc/glibc-functions/*.texi: Likewise.
Bruno Haible 496a7aee 2024-08-08T01:46:08 doc: Update for OpenBSD 7.5. * doc/posix-headers/*.texi: Update. * doc/glibc-headers/*.texi: Likewise. * doc/posix-functions/*.texi: Likewise. * doc/pastposix-functions/*.texi: Likewise. * doc/glibc-functions/*.texi: Likewise.
Bruno Haible f7576a33 2024-08-07T19:53:37 pthread-rwlock: Fix default wait queue behaviour on glibc/Linux. * lib/pthread.in.h: If REPLACE_PTHREAD_RWLOCK_INIT is 1 but REPLACE_PTHREAD_RWLOCK_DESTROY is 0, override PTHREAD_RWLOCK_INITIALIZER. * lib/pthread-rwlock.c (pthread_rwlockattr_init) [PTHREAD_RWLOCK_BAD_WAITQUEUE]: New function. (pthread_rwlock_init) [PTHREAD_RWLOCK_BAD_WAITQUEUE]: New function. * m4/pthread-rwlock.m4 (gl_PTHREAD_RWLOCK): Check for reasonable pthread_rwlock wait queue handling. Set REPLACE_PTHREAD_RWLOCK_INIT and REPLACE_PTHREAD_RWLOCKATTR_INIT and define PTHREAD_RWLOCK_BAD_WAITQUEUE if not. * modules/pthread-rwlock (configure.ac): Update GL_COND_OBJ_PTHREAD_RWLOCK condition. * doc/posix-functions/pthread_rwlock_rdlock.texi: Mark the glibc problem as fixed. * doc/posix-functions/pthread_rwlock_tryrdlock.texi: Likewise. * doc/posix-functions/pthread_rwlock_timedrdlock.texi: Likewise.
Bruno Haible 63b8ef1d 2024-08-06T16:03:41 doc: Mention a macOS bug. * doc/posix-functions/pthread_rwlock_trywrlock.texi: Mention a macOS bug.
Bruno Haible f9f125c4 2024-08-06T15:43:16 pthread-mutex tests: Strengthen tests. * tests/test-pthread-mutex-type.c: New file. * modules/pthread-mutex-tests (Files): Add it. (Makefile.am): Arrange to test test-pthread-mutex-type. * doc/posix-functions/pthread_mutex_lock.texi: Mention FreeBSD and NetBSD problem. * doc/posix-functions/pthread_mutex_trylock.texi: Likewise.
Paul Eggert 3498a703 2024-07-31T17:10:56 errno: make EEXIST != ENOTEMPTY on AIX Also, improve errno tests. * m4/calloc.m4 (gl_FUNC_CALLOC_GNU): * m4/malloc.m4 (gl_FUNC_MALLOC_GNU): * m4/realloc.m4 (gl_FUNC_REALLOC_GNU): * m4/scandir.m4 (gl_FUNC_SCANDIR): Define _LINUX_SOURCE_COMPAT, as this can sometimes help on AIX. * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Define _LINUX_SOURCE_COMPAT, to make EEXIST != ENOTEMPTY. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Define _LINUX_SOURCE_COMPAT, in case someone else does. * modules/errno-tests (Depends-on): Add assert-h, c99. * tests/test-errno.c (e1, ..., e131): Remove, replacing with ... (CHECK_POSIX_ERRNOS, POSITIVE_INTEGER_CONSTANT_EXPRESSION) (INDEXED_BY_ERRNO, ERRNO_COUNT): These new macros. Check that all errno values are positive integer constant expressions. Check that they are all distinct, except perhaps for EWOULDBLOCK == EAGAIN and ENOTSUP == EOPNOTSUPP. Also check ESOCKTNOSUPPORT, added in POSIX.1-2024. Also, check that errno values are distinct except when POSIX says they needn’t be distinct, since POSIX.1-2024 gives license to GNU/Linux’s non-distinct values.
Bruno Haible 3f8e0614 2024-07-29T13:38:46 logp1l: New module. * lib/math.in.h (logp1l): New declaration. * lib/logp1l.c: New file. * m4/logp1l.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether logp1l is declared. (gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_LOGP1L. (gl_MATH_H_DEFAULTS): Initialize HAVE_LOGP1L. * modules/math (Makefile.am): Substitute GNULIB_LOGP1L, HAVE_LOGP1L. * modules/logp1l: New file. * doc/posix-functions/logp1l.texi: Mention the new module.
Bruno Haible 4fc589a2 2024-07-29T13:15:23 logp1f: New module. * lib/math.in.h (logp1f): New declaration. * lib/logp1f.c: New file. * m4/logp1f.m4: New file. * m4/log1p.m4 (gl_FUNC_LOG1P): Define through AC_DEFUN_ONCE. * m4/isnand.m4 (gl_FUNC_ISNAND): Define through AC_DEFUN_ONCE. * m4/math_h.m4 (gl_MATH_H): Test whether logp1f is declared. (gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_LOGP1F. (gl_MATH_H_DEFAULTS): Initialize HAVE_LOGP1F. * modules/math (Makefile.am): Substitute GNULIB_LOGP1F, HAVE_LOGP1F. * modules/logp1f: New file. * doc/posix-functions/logp1f.texi: Mention the new module.
Bruno Haible 4cab49fa 2024-07-29T03:24:51 logp1: New module. * lib/math.in.h (logp1): New declaration. * lib/logp1.c: New file. * m4/logp1.m4: New file. * m4/math_h.m4 (gl_MATH_H): Test whether logp1 is declared. (gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_LOGP1. (gl_MATH_H_DEFAULTS): Initialize HAVE_LOGP1. * modules/math (Makefile.am): Substitute GNULIB_LOGP1, HAVE_LOGP1. * modules/logp1: New file. * doc/posix-functions/logp1.texi: Mention the new module.
Collin Funk 1f7685e9 2024-07-27T14:15:33 doc: Remove HTML code tags from Texinfo files. * doc/posix-functions/alarm.texi (alarm): Use @code{} instead of <code></code>. * doc/posix-headers/sys_un.texi (sys/un.h): Likewise.
Bruno Haible db344dc3 2024-07-23T14:49:18 doc: Update for glibc 2.40. * doc/posix-headers/utmpx.texi: Update. * doc/posix-functions/*.texi: Likewise.
Bruno Haible 423119a9 2024-07-23T12:40:58 strtold: Revisit underflow behaviour. * doc/posix-functions/strtold.texi: Mention broken mingw 5.0. Mention that gradual underflow does not count as an error on MSVC. * tests/test-strtold.h (test_function): Add a gradual underflow test. Check the sign in case of flush-to-zero underflow.
Bruno Haible bd61e8c8 2024-07-23T12:40:37 strtod: Revisit underflow behaviour. * doc/posix-functions/strtod.texi: Mention the macOS bug. Mention that gradual underflow does not count as an error on Cygwin 2.9 and MSVC. * m4/strtod.m4 (gl_FUNC_STRTOD): Update comment. * tests/test-strtod.h (test_function): Add a gradual underflow test. Check the sign in case of flush-to-zero underflow.
Bruno Haible edf38838 2024-07-23T12:40:33 strtof: Revisit underflow behaviour. * doc/posix-functions/strtof.texi: Mention the macOS bug. Mention the mingw overflow bug. Mention the underflow bugs on Cygwin 2.9 and mingw. Mention that gradual underflow does not count as an error on Cygwin 2.9, mingw, MSVC. * m4/strtof.m4 (gl_FUNC_STRTOF): Test against the mingw overflow bug. * tests/test-strtof.h (test_function): Add a gradual underflow test. Check the sign in case of flush-to-zero underflow.
Bruno Haible adfbfffa 2024-07-20T20:02:14 doc: Sort the ISO C and POSIX Function Substitutes by header file. * doc/gnulib.texi (Function Substitutes): Add one section per header file. * doc/posix-functions/*.texi: Each of these files is now a subsection.
Bruno Haible 64ac961b 2024-07-20T16:22:50 doc: Reference POSIX for functions that are added in POSIX:2024. * doc/posix-functions/_Fork.texi etc: Reference POSIX:2024, not the LSB and not the Austin Group tracker.
Bruno Haible 0c7f5062 2024-07-20T15:34:55 doc: Update status of functions that are added in POSIX:2024. * doc/posix-functions/_Fork.texi: Moved here from doc/glibc-functions/. * doc/posix-functions/accept4.texi: Likewise. * doc/posix-functions/asprintf.texi: Likewise. * doc/posix-functions/bind_textdomain_codeset.texi: Likewise. * doc/posix-functions/bindtextdomain.texi: Likewise. * doc/posix-functions/dcgettext.texi: Likewise. * doc/posix-functions/dcngettext.texi: Likewise. * doc/posix-functions/dgettext.texi: Likewise. * doc/posix-functions/dladdr.texi: Likewise. * doc/posix-functions/dngettext.texi: Likewise. * doc/posix-functions/dup3.texi: Likewise. * doc/posix-functions/ffsl.texi: Likewise. * doc/posix-functions/ffsll.texi: Likewise. * doc/posix-functions/getentropy.texi: Likewise. * doc/posix-functions/getresgid.texi: Likewise. * doc/posix-functions/getresuid.texi: Likewise. * doc/posix-functions/gettext.texi: Likewise. * doc/posix-functions/in6addr_any.texi: Likewise. * doc/posix-functions/in6addr_loopback.texi: Likewise. * doc/posix-functions/memmem.texi: Likewise. * doc/posix-functions/mkostemp.texi: Likewise. * doc/posix-functions/ngettext.texi: Likewise. * doc/posix-functions/pipe2.texi: Likewise. * doc/posix-functions/ppoll.texi: Likewise. * doc/posix-functions/pthread_cond_clockwait.texi: Likewise. * doc/posix-functions/pthread_mutex_clocklock.texi: Likewise. * doc/posix-functions/pthread_rwlock_clockrdlock.texi: Likewise. * doc/posix-functions/pthread_rwlock_clockwrlock.texi: Likewise. * doc/posix-functions/ptsname_r.texi: Likewise. * doc/posix-functions/qsort_r.texi: Likewise. * doc/posix-functions/secure_getenv.texi: Likewise. * doc/posix-functions/sem_clockwait.texi: Likewise. * doc/posix-functions/setresgid.texi: Likewise. * doc/posix-functions/setresuid.texi: Likewise. * doc/posix-functions/textdomain.texi: Likewise. * doc/posix-functions/timespec_get.texi: Likewise. * doc/posix-functions/vasprintf.texi: Likewise. * doc/posix-functions/reallocarray.texi: Likewise. Improve text. * doc/gnulib.texi (Function Substitutes): Include them here. (Glibc Function Substitutes): Don't include them here. (Glibc libintl.h): Remove section. (Glibc poll.h): Remove section. (Glibc semaphore.h): Remove section.
Bruno Haible 34b38352 2024-07-20T13:50:52 doc: Reference POSIX:2024 instead of POSIX:2018. * doc/*.texi: Change URL to POSIX. * doc/posix-headers/*.texi: Likewise. * doc/posix-functions/*.texi: Likewise.