PERFORM-TYPE

Specifies the behavior of return jumps from nested PERFORM statements.

Syntax:

>>-.---.--PERFORM-TYPE--"dialect"----------><
   +-/-+

Parameters:

dialect
One of:
MF
Only the exit point of the innermost PERFORM currently being executed is recognized and its return jump taken.
RM
The exit point of any PERFORM statement currently being executed is recognized if reached; the return jump taken is the first reached. PERFORM statements with the same exit point cannot be nested; if they are they do not return correctly. The end of a section is regarded as a separate point from the end of its last paragraph.
COBOL370, ENTCOBOL, OS390, OSVS, VSC2
The exit point of any PERFORM statement currently being executed is recognized if reached; the return jump taken is the first reached. PERFORM statements with the same exit point can be nested to a depth of two (one inner and one outer). If they are nested deeper, they do not return correctly. The end of a section is regarded as a separate point from the end of its last paragraph.
  • PERFORM-TYPE"COBOL370" provides compatibility with the mainframe behavior of COBOL/370.
  • PERFORM-TYPE"ENTCOBOL" provides compatibility with the mainframe behavior of Enterprise COBOL.
  • PERFORM-TYPE"OS390" provides compatibility with the mainframe behavior of OS/390 COBOL.
  • PERFORM-TYPE"OSVS" provides compatibility with the mainframe behavior of OS/VS COBOL and DOS/VS COBOL.
  • PERFORM-TYPE"VSC2" provides compatibility with the mainframe behavior of VS COBOL II.

Properties:

Default: PERFORM-TYPE"MF" (All mainframe dialects)
Phase: Syntax check
$SET: Initial

Dependencies:

DIALECT"RM" sets PERFORM-TYPE"RM" immediately.