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:




Reply via email to