SET QUALIFY command
Simplifies the identification of references and statement numbers
by resetting the point of view to a new block, compile unit, or load
module. In full-screen mode this affects the contents of the Source
window. If you are currently viewing one compile unit in your Source
window and you want to view another, enter the SET QUALIFY
command
to change the qualification. The SET
keyword is
optional. The QUALIFY
keyword can be abbreviated.
BLOCK
- Sets the current point of view to the specified block.
- block_spec
- A valid block specification.
CU
- Sets the current point of view to the specified compile unit.
CU
is equivalent toPROGRAM
.- cu_spec
- A valid compile unit specification.
- address
- An address within the CU that you want to qualify to.
PROGRAM
- Is equivalent to
CU
. LOAD
- Sets the current point of view to the specified load module.
- load_spec
- A valid load module specification. If omitted, the initial (primary) load module qualification is used.
RESET
- Resets qualification to the block of the suspended program and
(if the
SCREEN
setting isON
) scrolls the Source window to display the current statement line. RETURN
- Switches qualification to the next higher calling program.
UP
- Switches qualification up one lexical level to the statically containing block.
Usage notes
- In the Source window, you can type over the name displayed in the SOURCE field of the header
area, then press Enter. z/OS® Debugger creates and
runs the corresponding
SET QUALIFY CU
command. - If
SET PROGRAMMING LANGUAGE AUTOMATIC
is in effect (that is,HOLD
is not in effect), changing the qualification automatically sets the current programming language to the specified block or compile unit. - If you are debugging a program that has multiple enclaves, you can issue the
SET QUALIFY
command only for the following items:- Load modules, compile units, and blocks that are known to z/OS Debugger and are in the current enclave
- Load modules, compile units, and blocks that are not known to z/OS Debugger
- Non-Language Environment® assembler compile units in a higher-level enclave
SET QUALIFY
command for a load module that is part of a higher-level enclave. You cannot issue theSET QUALIFY
command for compile units in a higher-level enclave unless the compile unit is non-Language Environment. - The
SET QUALIFY
command does not imply a change in flow of control when the program is resumed with theGO
command. - The
SET QUALIFY
command cannot modify the point of view to a z/OS Debugger or library block. SET QUALIFY LOAD
will not change the results of theQUERY QUALIFY
command.- If you specify cu_spec as a CU name without a load module name,
z/OS Debugger searches for the CU in the following
order:
- CUs in the currently qualified load module.
- All known CUs.
- A CU by the specified name in a load module of the same name.
- When you use
SET QUALIFY address
, address can be any address within the corresponding CU. This form can be especially useful when qualifying to a CU within a non-reentrant load module, when more than one copy of the load module exists in memory. - If you enter the
SET QUALIFY LOAD
command orSET QUALIFY CU
command and specify the name of a load module that is not currently known to z/OS Debugger, z/OS Debugger runs an implicitLOAD
command for the load module. If the implicit LOAD is successful, implicit CUs are created for the following types of programs:- All CUs in the load module except COBOL and disassembly CUs
- If
SET DISASSEMBLY ON
is in effect, disassembly CUs - If the entry point of the load module is a disassembly program, regardless of the setting of
SET DISASSEMBLY
.
GO
orSTEP
, the implicitly loaded modules are deleted, any breakpoints created in the implicitly created CUs are suspended, and all implicitly created CUs are destroyed. If the CU is later created during normal program execution, the suspended breakpoints are reactivated. - You cannot use the
SET QUALIFY LOAD
orSET QUALIFY CU
command to implicitly load a DLL. - If you enter a
SET QUALIFY CU
command that specifies the name of a COBOL CU that has not yet been created because the CU has not been run, z/OS Debugger creates an implicit CU. With implicit CUs, you can do debugging tasks such as setting breakpoints and browsing the source of the CU. When you run the program by entering a command such asGO
orSTEP
, any breakpoints created in the implicitly created CUs are suspended and all implicitly created CUs are destroyed. If the CU is later created during normal program execution, the suspended breakpoints are reactivated. - If you stop in an enclave where Language
Environment is not yet active, you cannot use
SET QUALIFY LOAD
orSET QUALIFY CU
commands to load a Language Environment load module or to create a Language Environment compile unit. You can only use these commands to load a Language Environment load module or create a Language Environment compile unit after Language Environment has been initialized in the current enclave. - You can use the
SET QUALIFY CU
andSET QUALIFY LOAD
commands in remote debug mode. However, these commands in remote debug mode do not set the current point of view to the specified compile unit or specified load module. Instead, the user should receive a message similar to 'EQA2476I An implicit LOAD was issued for module module_name' in the Debug Console. The user must select the specified compile unit or load module in the Modules view to update the current point of view.
Examples
- Indicate to z/OS Debugger that
the load module
statmod
should be used when no load module is specified.SET QUALIFY LOAD statmod;
- Set the qualification back to the point
of the suspended program.
SET QUALIFY RESET;
- Set the block qualification to
blockx
. As a result, the load module qualification and compile unit qualification will be updated to the load module and compile unit that contain the blockblockx
.SET QUALIFY BLOCK blockx;
Refer to the following topics for more information related to the material discussed in this topic.
- Related references
- block_spec
- cu_spec
- load_spec
- z/OS Debugger commands supported in remote debug mode