The strerror function uses the error number in error_code to retrieve the appropriate locale-dependent error message. The contents of the error message strings are determined by the LC_ MESSAGES category of the program's current locale. When a program is not compiled with any standards-related feature-test macros, strerror has a second argument (vms_error_ code), which is used in the following way: o If error_code is EVMSERR and there is a second argument, then that second argument is used as the vaxc$errno value. o If error_code is EVMSERR and there is no second argument, look at vaxc$errno to get the OpenVMS error condition. See the Example section. Use of the second argument is not included in the ANSI C definition of strerror and is, therefore, not portable. Because no return value is reserved to indicate an error, applications should set the value of errno to 0, call strerror, and then test the value of errno; a nonzero value indicates an error condition.