ページの先頭行へ戻る
NetCOBOL for .NET V8.0 メッセージ集
FUJITSU Software

2.4.299 JMN3545I-S

同じ手続き内に対応する入出力誤り処理手続きが存在するため,この@1@文はTRY文内に書くことははできません.

引数の説明

@1@:

入出力文の名前

      000001 PROGRAM-ID. C3545.
      000002 ENVIRONMENT DIVISION.
      000003 INPUT-OUTPUT SECTION.
      000004 FILE-CONTROL.
      000005     SELECT FILE-1 ASSIGN TO SYS006.
      000006 DATA DIVISION.
      000007 FILE SECTION.
      000008   FD FILE-1.
      000009   01 REC-1 PIC X(80).
      000010 WORKING-STORAGE SECTION.
      000011 PROCEDURE DIVISION.
      000012 DECLARATIVES.
      000013 S-001 SECTION.
      000014     USE AFTER STANDARD ERROR PROCEDURE ON FILE-1.
      000015     DISPLAY "-- FILE-1 ERROR --".
      000016 END DECLARATIVES.
      000017     TRY
      000018       READ FILE-1
      000019     FINALLY
      000020       DISPLAY "-- READ ERROR --"
      000021     END-TRY.
      000022     .
      000023 END PROGRAM C3545.
    

C3545.cob (18) : JMN3545I-S このREAD文には,対応する入出力誤り処理手続きが存在します.従ってTRY文内に書くことははできません.

詳細な説明

.NETでは,try-catch-finallyブロックの外部から内部に飛び込む分岐命令を含むコードは,検証可能(verifiable)と認定されません.誤り処理手続きが実行される可能性のある入出力文がTRY文内に存在すると,誤り処理手続きからの復帰が,上述のような分岐命令となります.つまり翻訳結果が,/verifiableオプションの指定の有無に関わらず,必ずunverifiableとなってしまいます.このため,記述を禁止しています.