wprintf
=======

POSIX specification:
 https://pubs.opengroup.org/onlinepubs/9699919799/functions/wprintf.html

Gnulib module: ---

Portability problems fixed by Gnulib:

Portability problems not fixed by Gnulib:

  * This function is missing on some platforms: NetBSD 3.0, OpenBSD 3.8, Minix 3.1.8, HP-UX 11.00, IRIX 6.5.

  * This function exists, but does not support wide arguments on some platforms: Cygwin 1.5.x.

  * On Windows and 32-bit AIX platforms, wchar_t is a 16-bit type and therefore cannot accommodate all Unicode characters.

  * This function does not support size specifiers as in C23 (w8, w16, w32, w64, wf8, wf16, wf32, wf64) on some platforms: glibc, musl libc, macOS 12.5, FreeBSD 13.2, NetBSD 9.0, OpenBSD 7.2, AIX 7.2, HP-UX 11, Solaris 11.4, Cygwin 2.9.0, mingw, MSVC 14.

  * This function does not support the b directive, required by ISO C23, on some platforms: glibc 2.34, musl libc, macOS 12.5, FreeBSD 13.2, NetBSD 9.0, OpenBSD 7.2, AIX 7.2, HP-UX 11, Solaris 11.4, Cygwin 2.9.0, mingw, MSVC 14.

  * printf "%#.0x" or "%#.0X" with a zero argument yields an incorrect result (non-empty) on some platforms: Mac OS X 10.6.

  * The %m directive is not portable, use %s mapped to an argument of strerror(errno) (or a version of strerror_r) instead.

  * In the C or POSIX locales, the %c and %s conversions may fail on some platforms: glibc 2.35.

  * When formatting an integer with grouping flag, this function inserts thousands separators even in the "C" locale on some platforms: NetBSD 5.1.

  * On some platforms, this function does not set errno or the stream error indicator on attempts to write to a read-only stream: Cygwin 1.7.9.