Programs that exist in MVS data sets

dbx can debug programs that have source or load modules in MVS™ data sets.

dbx can only locate source in MVS data sets when:

  1. The application program was compiled with the source in an MVS data set or partioned data set. This is required because the compiler puts the source file name inside the symbolics of the load module.
  2. The source is in a variable block/record data set or partioned data set. dbx does not support source code in fixed block/record data sets or partioned data sets.
  3. The user places the special path // into the dbx source path directory list, IE, use //. This tells dbx to specifically search for MVS data sets.

dbx does not get proper events for DLLs or load modules that exist in MVS data sets or MVS partitioned data sets, therefore dbx cannot support these programs directly. However, dbx does support load modules in MVS data sets when they are loaded via external links in the hierarchical file system. This program arrangement is usually required for authorized programs such as daemons to run on MVS. In addition, for performance reasons, dbx by default does not process symbolic information for load modules in MVS data sets. If you want dbx to obtain this symbolic information, you must add set $sticky_debug to .dbxsetup .