OPEN
The assembler calls the exit with a request type of 1 (OPEN) at the start of the assembly. The exit type field indicates which exit is being called. The OBJECT exit is type 5, and the PUNCH exit is type 4.
The exit sets the return code in the
Exit Parameter List to one of these values:
- 0
- Instructs the assembler to open the object data set, and supply
the object records to the exit in later PROCESS calls. Note: A reason code of 16 indicates a REINIT call is required.
- 4
- Indicates that the exit writes the object records in later WRITE
calls. If you want to provide the assembler with the values for the
system variables &SYSLIN_DSN, &SYSLIN_MEMBER, and &SYSLIN_VOLUME,
then during the OPEN call for the OBJECT exit, the exit must set the reason code to 4
and place the values in the data set name, member name, and volume serial fields
of the exit-specific information block.
If you want to provide the assembler with the values for the system
variables &SYSPUNCH_DSN, &SYSPUNCH_MEMBER, and &SYSPUNCH_VOLUME,
then during the OPEN call for the PUNCH exit, the exit must set the reason code to 4
and place the values in the data set name, member name, and volume serial fields
of the exit-specific information block.
The assembler also shows the information for both object and punch
data sets in the Diagnostic Cross Reference and Assembler Summary
section of the listing, and includes it in the associated data file
Output File Information record. Note: A reason code of 16 indicates a REINIT call is required.
- 16
- Instructs the assembler to open the object data set and make no further calls to the exit.
If you provide a character string in the str4 suboption of the EXIT assembler option, the buffer pointer field points to the character string, and the buffer length contains the length of the character string. The buffer length is set to zero if there is no character string.
Note: If both OBJECT and DECK are specified (so that the exit is called
twice), the optional character string specified in the PARM string
is passed each time.