_EDC_DLL_DIAG

Indicates if additional DLL diagnostic information should be generated upon failure for the following DLL functions: dllload(), dlopen(), dllqueryfn(), dllqueryvar(), dlsym(), dllfree(), and dlclose() . _EDC_DLL_DIAG has no effect on implicit DLLs. If _EDC_DLL_DIAG is not set by the user, it will default to QUIET.

_EDC_DLL_DIAG can be set with the following command, where x is a string.
setenv("_EDC_DLL_DIAG","x",1);
Acceptable values for x are as follows:
Value
Description
MSG
Issue DLL error messages to the Language Environment® message file.
TRACE
Issue all DLL error messages to the Language Environment message file and call the ctrace() function to produce a traceback for each error.
SIGNAL
Issue all DLL error messages to the Language Environment message file, call the ctrace() function to produce a traceback for each error, and signal a condition for each error's feedback code.
QUIET
Turn off all _EDC_DLL_DIAG error diagnostics; this is the default setting.
The _EDC_DLL_DIAG values must be specified in capital letters in order to be recognized. See z/OS XL C/C++ Runtime Library Reference for details on the level of diagnostic information provided by ctrace().

There is currently no way to intercept a signaled DLL condition in AMODE 64; therefore, termination is bound to happen if SIGNAL is in effect.

The following list shows examples of how to use _EDC_DLL_DIAG.
  • Issue a DLL error message for DLL errors.
    setenv("_EDC_DLL_DIAG","MSG",1);
  • Issue a DLL error message and call the ctrace() function for DLL errors.
    setenv("_EDC_DLL_DIAG","TRACE",1);
  • Issue a DLL error message, call the ctrace() function, and signal a condition for DLL errors.
    setenv("_EDC_DLL_DIAG","SIGNAL",1);
  • Turn off _EDC_DLL_DIAG error diagnostics.
    setenv("_EDC_DLL_DIAG","QUIET",1);