On MSYS2, mingw can be used in two ways [1]: - with MSVCRT as runtime library (this is also what mingw on Cygwin does), - with UCRT as runtime library (same runtime library as used by MSVC).
Comparing the config.cache values of a gnulib testdir in both cases, I see some small differences. For example, the timespec_get function is supported in UCRT but not in MSVCRT. This patch adapts the documentation. [1] https://www.msys2.org/docs/environments/ 2024-12-24 Bruno Haible <br...@clisp.org> 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. diff --git a/doc/posix-functions/btowc.texi b/doc/posix-functions/btowc.texi index cd2b18208a..467fb9be24 100644 --- a/doc/posix-functions/btowc.texi +++ b/doc/posix-functions/btowc.texi @@ -22,7 +22,7 @@ @item In the C or POSIX locales, this function is not consistent with @code{mbrtowc} on some platforms: -Cygwin 3.4.x, mingw. +Cygwin 3.4.x, mingw with MSVCRT. @end itemize Portability problems not fixed by Gnulib: diff --git a/doc/posix-functions/fopen.texi b/doc/posix-functions/fopen.texi index 33c24024fd..5b218f29c0 100644 --- a/doc/posix-functions/fopen.texi +++ b/doc/posix-functions/fopen.texi @@ -29,7 +29,7 @@ This function does not support the mode character @samp{x} (corresponding to @code{O_EXCL}), introduced in ISO C11, on some platforms: -FreeBSD 8.2, NetBSD 6.1, OpenBSD 5.6, Minix 3.2, AIX 6.1, HP-UX 11.31, Solaris 11.3, Cygwin 1.7.16 (2012), mingw, MSVC 14. +FreeBSD 8.2, NetBSD 6.1, OpenBSD 5.6, Minix 3.2, AIX 6.1, HP-UX 11.31, Solaris 11.3, Cygwin 1.7.16 (2012), mingw with MSVCRT, MSVC 14. @item This function does not support the mode character @samp{e} (corresponding to @code{O_CLOEXEC}), diff --git a/doc/posix-functions/mbrtowc.texi b/doc/posix-functions/mbrtowc.texi index 55465e8208..8674478adf 100644 --- a/doc/posix-functions/mbrtowc.texi +++ b/doc/posix-functions/mbrtowc.texi @@ -23,7 +23,7 @@ is empty: @c https://sourceware.org/bugzilla/show_bug.cgi?id=16950 glibc 2.19, -MSVC 14, Android 11. +mingw with UCRT, MSVC 14, Android 11. @item This function returns @code{(size_t) -1} instead of @code{(size_t) -2} when the input is empty: @@ -35,7 +35,7 @@ @item This function stores a wide character when parsing an incomplete multibyte character on some platforms: -MSVC 14. +mingw with UCRT, MSVC 14. @item This function returns the total number of bytes that make up the multibyte character, not the number of bytes that were needed to complete the multibyte diff --git a/doc/posix-functions/mbsinit.texi b/doc/posix-functions/mbsinit.texi index 5258ab9929..be9a806ae7 100644 --- a/doc/posix-functions/mbsinit.texi +++ b/doc/posix-functions/mbsinit.texi @@ -11,7 +11,7 @@ @itemize @item This function is missing on some platforms: -Minix 3.1.8, HP-UX 11.00, MSVC 14. +Minix 3.1.8, HP-UX 11.00, mingw with UCRT, MSVC 14. @item This function always returns 1, even in multibyte locales, on some platforms: mingw. diff --git a/doc/posix-functions/modf.texi b/doc/posix-functions/modf.texi index 2bf1965c30..fd48080ddc 100644 --- a/doc/posix-functions/modf.texi +++ b/doc/posix-functions/modf.texi @@ -19,7 +19,7 @@ NetBSD 5.1, Cygwin. @item This function has problems with infinite arguments on some platforms: -FreeBSD 6.4, OpenBSD 7.3. +FreeBSD 6.4, OpenBSD 7.3, mingw with MSVCRT. @end itemize Portability problems not fixed by Gnulib: diff --git a/doc/posix-functions/modff.texi b/doc/posix-functions/modff.texi index d1479e0f88..6dec61e111 100644 --- a/doc/posix-functions/modff.texi +++ b/doc/posix-functions/modff.texi @@ -25,7 +25,7 @@ NetBSD 5.1, OpenBSD 7.5, Solaris 9, Cygwin. @item This function has problems with infinite arguments on some platforms: -mingw. +mingw with MSVCRT. @end itemize Portability problems not fixed by Gnulib: diff --git a/doc/posix-functions/round.texi b/doc/posix-functions/round.texi index ea6fa0f8b9..11efe3c26d 100644 --- a/doc/posix-functions/round.texi +++ b/doc/posix-functions/round.texi @@ -19,7 +19,7 @@ @item This functions returns a wrong result for @math{x = 1/2 - 2^-54} on some platforms: -NetBSD 3.0, AIX 7.1. +NetBSD 3.0, AIX 7.1, mingw with MSVCRT. @end itemize Portability problems fixed by Gnulib module @code{round-ieee}: diff --git a/doc/posix-functions/roundf.texi b/doc/posix-functions/roundf.texi index 3ad641a72e..7306e69ac7 100644 --- a/doc/posix-functions/roundf.texi +++ b/doc/posix-functions/roundf.texi @@ -19,7 +19,7 @@ @item This functions returns a wrong result for @math{x = 1/2 - 2^-25} on some platforms: -mingw. +mingw with MSVCRT. @end itemize Portability problems fixed by Gnulib module @code{roundf-ieee}: diff --git a/doc/posix-functions/swprintf.texi b/doc/posix-functions/swprintf.texi index b089a47cb3..7f6ee3848f 100644 --- a/doc/posix-functions/swprintf.texi +++ b/doc/posix-functions/swprintf.texi @@ -14,7 +14,7 @@ @itemize @item This function is missing on some platforms: -NetBSD 3.0, OpenBSD 3.8, Minix 3.1.8, HP-UX 11.00, Cygwin 1.5.x. +NetBSD 3.0, OpenBSD 3.8, Minix 3.1.8, HP-UX 11.00, Cygwin 1.5.x, mingw with UCRT. @item This function has a different signature on some platforms: MSVC 9. diff --git a/doc/posix-functions/timespec_get.texi b/doc/posix-functions/timespec_get.texi index b9ee889dd2..80b0dc30d3 100644 --- a/doc/posix-functions/timespec_get.texi +++ b/doc/posix-functions/timespec_get.texi @@ -13,7 +13,7 @@ @itemize @item This function is missing on many platforms: -glibc 2.15, macOS 10.14, FreeBSD 11.0, NetBSD 7.1, OpenBSD 6.0, Minix 3.1.8, AIX 7.1, HP-UX 11.31, Solaris 11.3, Cygwin 3.5.x, mingw, MSVC 14, Android 9.0. +glibc 2.15, macOS 10.14, FreeBSD 11.0, NetBSD 7.1, OpenBSD 6.0, Minix 3.1.8, AIX 7.1, HP-UX 11.31, Solaris 11.3, Cygwin 3.5.x, mingw with MSVCRT, MSVC 14, Android 9.0. @end itemize Portability problems not fixed by Gnulib: diff --git a/doc/posix-functions/wcrtomb.texi b/doc/posix-functions/wcrtomb.texi index c357b38151..612dcacb0a 100644 --- a/doc/posix-functions/wcrtomb.texi +++ b/doc/posix-functions/wcrtomb.texi @@ -20,7 +20,7 @@ Solaris 11.3. @item This function does not ignore the second argument when the first argument is NULL on some platforms: -MSVC 14. +mingw with UCRT, MSVC 14. @end itemize Portability problems not fixed by Gnulib: