プログラムのデータ領域が破壊されました。COBOLプログラムで破壊していると想定した場合考えられる原因は何ですか?

プログラムのデータ領域が破壊されました。COBOLプログラムで破壊していると想定した場合考えられる原因は何ですか?
プログラムからの領域外アクセスやプログラム間連絡機能を使用したパラメーター受け渡し時のミスが考えられます。
添字・指標、部分参照などにより領域外をアクセスしている可能性があります。
このような添字・指標、部分参照などの領域外アクセスをチェックする機構として、CHECK機能があります。
CHECK機能の使用方法など、詳細については、以下のマニュアルを参照してください。

NetCOBOL 使用手引書
  • 「デバッグ機能」

また、プログラム間連携機能により、呼ぶプログラムと呼ばれるプログラム(副プログラム)でパラメーターを受け渡しているとき、下記のケースにて領域破壊を起こすことがあります。
このケースについては、COBOLではチェック機構がありませんので、プログラム作成時に以下のケースに該当していないか、充分確認するようお願いします。
  • 呼ぶプログラムで渡すパラメーター数と副プログラムで受け取るパラメーター数が一致しない。
  • 呼ぶプログラムで渡すパラメーターのデータの長さと、副プログラムで受け取る対応するパラメーターのデータの長さが一致しない。
製品・サービス情報
対象製品NetCOBOL
プラットフォームWindows x86, Windows x64, Windows Itanium, Solaris, Linux x86, Linux Intel64, Linux Itanium
アンサー種別 技術サポート
このページの先頭へ