返却値を指定するパラメーター化セクションは、パラメーター化セクションの戻り項目が有効な任意のコンテキストで関数として使用できる。
argument-list は次のとおり。
構文規則:
- パラメーター化セクション内の不定でないそれぞれのパラメーターについて引数を指定する必要がある。
- 各引数は、対応するパラメーターの型と互換性がなければならない。
- 各引数の BY VALUE/REFERENCE のタイプは、対応するパラメーターのタイプと同じでなければならない。BY VALUE も BY REFERENCE も指定されていない場合は、BY VALUE であると見なされる。
- 引数が BY CONTENT で渡される場合、パラメーター化セクションの受け渡しモードで BY REFERENCE を指定する必要がある。この場合、渡された項目は一時バッファーに移動されるため、元のデータ項目の内容は変更されない。
- section パラメーターで BY REFERENCE を指定する場合:
- セクションに渡される型付き引数は、TYPEDEF がパラメーターと同じでなければならない。例外として、TYPEDEF が 1 バイトの PIC X 定義の場合は、TYPEDEF で指定していない PIC X を使用できる。
- セクションに渡される非型引数は、定義がパラメーターと同じでなければならない。
- 定数の引数は、BY REFERENCE または BY CONTENT で渡す必要がある。
- セクションに BY VALUE で渡されるポインター引数は、TYPEDEF が同じでなければならない。
- section パラメーターで BY VALUE を指定する場合:
- セクションに渡される型付きポインター引数は、TYPEDEF がパラメーターと同じでなければならない。
- 引数とパラメーターの両方が BY VALUE で指定されている場合、「MOVE 文」に従って移動互換性チェックが実行される。
- ポインター引数を BY VALUE でセクションに渡す場合、パラメーターでは BY REFERENCE で英数字型を指定できる。
- 英数字型を BY REFERENCE でセクションに渡す場合、section パラメーターをポインターにすることができる。