STICKY-PERFORM

プログラムが再入された場合の PERFORM 文の動作を指定します。

構文:

>>-.---.-.----.--STICKY-PERFORM------------><
   +-/-+ +-NO-+

パラメーター:

なし

プロパティ:

デフォルト: NOSTICKY-PERFORM
段階: 構文チェック
$SET: 最初の行

説明:

この指令は、PERFORM-TYPE"OSVS" または PERFORM-TYPE"RM" を指定してプログラムをコンパイルした場合にのみ有効です。

コンパイル時に PERFORM-TYPE"OSVS" または PERFORM-TYPE"RM" を指定すると、PERFORM 文は、記憶領域、またはバケットを持つように実装されます。これらの記憶域、またはバケットは、プログラム中の PERFORM 文の範囲の終わりとなる場所すべてに関連付けられます。PERFORM 文が実行されると、返りアドレスがバケットに格納され、PERFORM 文の範囲の終わりでそのバケットが読み取られます。バケットは、制御を戻す先を決定するために使用され、使用後にクリアされます。

デフォルトでは、EXIT PROGRAM 文でこれらのバケットがクリアされます。これにより、プログラムが再入された場合に、前に実行された PERFORM 文の戻りアドレスが残りません。STICKY-PERFORM を指定した場合は、EXIT PROGRAM 文でバケットがクリアされません。つまり、再入時には、前に実行されたすべての PERFORM 文の返りアドレスが残っていることになります。

STOP RUN 文または CANCEL 文では、この指令の設定に関係なく、バケットがクリアされます。