These routines try very hard to return the corresponding error
text, even to the point of formatting the integer value into
the provided string, into a static buffer or returning a default
string. These routines should never return NULL, but they rely on
catgets(3) to do the underlying work of looking the error code in
the message catalogs.