Starting z/OS Debugger with PLITEST

For PL/I programs, the preferred method of Starting z/OS® Debugger is to use the built-in subroutine PLITEST. It can be used in exactly the same way as CEETEST, except that you do not need to include CEEIBMAW or CEEIBMCT, or perform declarations.

The syntax is:

Syntax diagram for the PL/I PLITEST built-in subroutine
character_string_expression
Specifies a list of z/OS Debugger commands. If necessary, this is converted to a fixed-length string.
Note:
  1. If z/OS Debugger executes a command in a CALL PLITEST command string that causes control to return to the program (GO for example), any commands remaining to be executed in the command string are discarded.
  2. If you don't want to compile your program with hooks, you can use CALL PLITEST statements as hooks and insert them at strategic points in your program. If you decide to use this method, you still need to compile your application so that symbolic information is created.
The following examples show how to use PLITEST to start z/OS Debugger for PL/I.
Example 1
No argument is passed to z/OS Debugger when it is started. After gaining control, z/OS Debugger prompts you for commands.
CALL PLITEST;
Example 2
A string of commands is passed to z/OS Debugger when it is started. After gaining control, z/OS Debugger sets a breakpoint at statement 23, and returns control to the program. You are not prompted for commands. In addition, the List Y; command is discarded because of the execution of the GO command.
CALL PLITEST('At statement 23 Do; List X; End; Go; List Y;');
Example 3
Variable ch is declared as a character string and initialized as a string of commands. The string of commands is passed to z/OS Debugger when it is started. After it runs the commands, z/OS Debugger prompts you for more commands.
DCL  ch   Char(45) Init('At Statement 23 Do; List x; End;');

CALL PLITEST(ch);