_EDC_IO_ABEND

When an abend condition arises during OS I/O processing, the zOS XL C/C++ runtime library ignores the condition, if possible. When the abend condition cannot be ignored, the abend is issued. This environment variable controls if the runtime library should attempt to recover from an abend issued during OS I/O processing. The acceptable values for the environment variable are as follows:

ABEND
Specifies that the runtime library is to ignore abend conditions that can be ignored and that the runtime library should not attempt to recover from an abend issued during OS I/O processing. When an abend is issued during OS I/O processing, Language Environment® condition handling semantics take effect. The only methods available for the application to attempt to recover are to write a Language Environment condition handler or a SIGABND signal handler. If this environment value is not set or if a value other than ABEND or RECOVER is specified, this is the default behavior.
RECOVER
Specifies that the runtime library is to ignore abend conditions that can be ignored and also that the runtime library should attempt to recover from an abend issued during OS I/O processing. If the library can recover, then control will be returned to the application as a failing return value, with errno set to 92 and diagnostic information in the __amrc structure. If the library cannot recover, Language Environment condition handling semantics take effect.
Notes:
  1. The value is not case sensitive.
  2. When a stream is opened, the current setting of the environment variable defines the behavior for the life of the open stream, unless overridden by the abend keyword specified in the modestring on the fopen() or freopen() call.
  3. Changes to the environment variable do not affect existing open streams.
  4. This environment variable has no effect for SPC applications.

For more information about error handling during I/O operations, refer to Performing OS I/O operations.

The following example show one method to set this environment variable.
setenv(“_EDC_IO_ABEND”, “RECOVER”, 1);