Checking patch manual/errno.texi... error: while searching for: @deftypefun {char *} strerror (int @var{errnum}) @standards{ISO, string.h} @safety{@prelim{}@mtunsafe{@mtasurace{:strerror}}@asunsafe{@ascuheap{} @ascuintl{}}@acunsafe{@acsmem{}}} @c Calls strerror_r with a static buffer allocated with malloc on the @c first use. The @code{strerror} function maps the error code (@pxref{Checking for Errors}) specified by the @var{errnum} argument to a descriptive error message string. The return value is a pointer to this string. The value @var{errnum} normally comes from the variable @code{errno}. You should not modify the string returned by @code{strerror}. Also, if you make subsequent calls to @code{strerror}, the string might be overwritten. (But it's guaranteed that no library function ever calls @code{strerror} behind your back.) The function @code{strerror} is declared in @file{string.h}. @end deftypefun @deftypefun {char *} strerror_r (int @var{errnum}, char *@var{buf}, size_t @var{n}) @standards{GNU, string.h} @safety{@prelim{}@mtsafe{}@asunsafe{@ascuintl{}}@acunsafe{}} The @code{strerror_r} function works like @code{strerror} but instead of returning the error message in a statically allocated buffer shared by all threads in the process, it returns a private copy for the thread. This might be either some permanent global data or a message string in the user supplied buffer starting at @var{buf} with the length of @var{n} bytes. At most @var{n} characters are written (including the NUL byte) so it is up to the user to select a buffer large enough. This function should always be used in multi-threaded programs since there is no way to guarantee the string returned by @code{strerror} really belongs to the last call of the current thread. The function @code{strerror_r} is a GNU extension and it is declared in @file{string.h}. @end deftypefun @deftypefun void perror (const char *@var{message}) error: patch failed: manual/errno.texi:1147 error: manual/errno.texi: patch does not apply