Hash :
c36a0f21
Author :
Date :
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.
@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