@node strerror
@subsection @code{strerror}
@findex strerror

POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/functions/strerror.html}

Gnulib module: strerror
@mindex strerror

Portability problems fixed by Gnulib:
@itemize
@item
This function does not support the error values that are specified by POSIX
but not defined by the system, on some platforms:
OpenBSD 4.0, NonStop Kernel, Cygwin 1.5.x, mingw, MSVC 14.
@item
This function reports failure for @code{strerror(0)} (by setting
@code{errno} or using a string similar to out-of-range values),
although POSIX requires this to leave @code{errno} unchanged and
report success, on some platforms:
FreeBSD 8.2, NetBSD 10.0, OpenBSD 4.7, macOS 14.
@item
This function fails to return a string for out-of-range integers on
some platforms:
HP-UX 11.
(Some return NULL which is a POSIX violation, others return the empty
string which is valid but not as useful); this can still cause bugs
because most programs call @code{strerror} without setting and testing
@code{errno}.)
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@end itemize
