AT ENTRY command
Defines a breakpoint at the specified entry point in the specified block.
- *
- Sets a breakpoint at every
ENTRY
of any block. - command
- A valid z/OS® Debugger command. If you are using remote debug mode, you can specify only commands that are supported in remote debug mode.
- condition
- A valid z/OS Debugger conditional expression.
Usage
notes
- For VS COBOL II programs, z/OS Debugger supports
only the
AT ENTRY *
command. - To specify an
AT ENTRY
breakpoint for a program that is not currently known to z/OS Debugger, you must do one of the following:- If the name of the program is the same as the block_spec, you do not need to qualify the block_spec with the name of the program.
- If the name of the program is not the same as the block_spec, you need to qualify the block_spec with a program name. When z/OS Debugger detects a program name that matches the one you specified, it sets the breakpoint.
- An
ENTRY
breakpoint set for a compile unit that becomes nonactive (one that is not in the current enclave), is suspended until the compile unit becomes active. AnENTRY
breakpoint set for a compile unit that is deleted from storage is suspended until the compile unit is reloaded. A suspended breakpoint cannot be triggered until it is reactivated. - For a CICS® application on z/OS Debugger, this breakpoint is cleared at the end of the last process in the application. For a non-CICS application on z/OS Debugger, it is cleared at the end of a process.
ENTRY
breakpoints for blocks in a fetched or loaded program are converted to deferred breakpoints when that program is released.- The
AT ENTRY
command cannot be used while you replay recorded statements by using thePLAYBACK
commands. - You cannot use the
AT ENTRY
command to stop at the entry to a Language Environment® MAIN routine for an enclave other than the first enclave if you do not have debug data available for the containing compile unit. - You can restrict the circumstances under which the
AT ENTRY
break point is raised by specifying aWHEN
condition. If aWHEN
condition is specified, z/OS Debugger stops at theAT ENTRY
break point if the specified entry point matches the current entry point and theWHEN
condition is true. - The following conditional operators can be used in a condition:
- =
- Compare the two operands for equality.
- ¬=
- Compare the two operands for inequality.
- <
- Determines whether the left operand is less than the right operand.
- >
- Determines whether the left operand is greater than the right operand.
- <=
- Determines whether the left operand is less than or equal to the right operand.
- >=
- Determines whether the left operand is greater than or equal to the right operand.
- &
- Logical "and" operation.
- |
- Logical "or" operation.
- If you use the
AT ENTRY
command with aWHEN
condition, every time z/OS Debugger reaches the entry, it evaluates the condition. If the condition evaluates to true, z/OS Debugger stops and runs the command associated with the breakpoint. - When z/OS Debugger evaluates
the condition and the condition is invalid, z/OS Debugger does
one of the following actions:
- If
SET WARNING
is set toON
, z/OS Debugger stops and displays a message that it could not evaluate the condition. You need to enter a command to indicate what action you want z/OS Debugger to take. - If
SET WARNING
is set toOFF
, z/OS Debugger does not stop nor display a message that it could not evaluate the condition. z/OS Debugger continues running the program.
- If
- A deferred
AT ENTRY
command creates an implicitNAMES INCLUDE
for the target of the deferredAT ENTRY
. - You cannot use the
AT ENTRY
command to stop at the entry of a nested block in a C or C++ program. A nested block is a group of statements delimited by { and }. The compiler assigns a name to these blocks using the following pattern: %BLOCKn, where n is a sequentially-assigned number.
Examples
- At the entry of program
subrx
, initialize variableix
and continue program execution. The current programming language setting is COBOL.AT ENTRY subrx PERFORM SET ix TO 5; GO; END-PERFORM;
- At the entry of program
myprog
with parametermyparm
, to stop at the entry point tomyprog
only whenmyparm
equals100
, enter the following command:AT ENTRY myprog WHEN myparm=100;
Refer to the following topics for more information related to the material discussed in this topic.