GTM-MML4VXJ
Skip to main content

プログラム修正一覧 : Linux (x64) NetCOBOL開発環境

V12.1.0

ここに記載している情報は、V12.1.0で修正されている旧版で発生した障害一覧です。

項番 発生V/L 修正V/L P番号 現象
1 V10.1.0~V12.0.0 V12.1.0 PH13959

以下の条件の場合、COBOLプログラムの翻訳時に、コンパイラが無限ループをして翻訳が完了しないことがあります(*1)。

*1: 無限ループが発生しない場合、翻訳処理の結果は正しいです。

[条件1]

  1. IF文の入れ子の階層(*2)が180以上(*3)ある。かつ、
  2. 1.の180番目以降のIF文にCOBOLの文を記述している場合。

または、

[条件2]

  1. そとPERFORM文と節と段落が合わせて274以上(*3)ある。かつ、
  2. 1.の274番目以降の節または段落にCOBOLの文を記述している場合。

*2: IF文の入れ子の例。この例では入れ子の階層は2です。

      IF ~                   ---------+
        IF ~                 --+      |
          ~                    |      |
                    階層2   階層1
          ~                    |      |
        END-IF                --+      |
      END-IF                 ----------+

*3: 翻訳時のメモリの状態に依存するため、条件に一致しても無限ループしないことがあります。

2 V11.0.0~V12.0.0 V12.1.0 PH13961

以下の条件の場合、COBOLプログラムの翻訳時に、コンパイラが次のメッセージを出力して異常終了する場合があります。

JMN0102I-U 翻訳処理が続行不可能となりました.他の診断メッセージが表示されている場合は,それらを修正して,再度翻訳してみて下さい. (区名=JMNRAL,モジュール名=SABEMAC ,詳細コード=6202,行情報=nnnn.)

  1. 翻訳オプションOPTIMIZE(*1)が有効である。かつ、
  2. 翻訳オプションARITHMETIC(31)(*2)が有効である。かつ、
  3. 整数部1桁の2進項目を宣言している。かつ、
  4. 3.の数字項目に数字定数を転記している。かつ、
  5. 以下A、Bのどちらかに該当する算術文が存在する。かつ、
    A.以下の条件を満足する加減算
    • 作用対象が3.の数字項目。
    • 他方の作用対象の小数部桁が37桁以上の中間結果(*3)。
    B.以下の条件を満足する除算
    • 被序数が3.の数字項目。
    • 除数と商を受け取る数字項目の小数部桁が合わせて37桁。
  6. 4.と5.の文の間に下記の記述がない場合。
    • 段落
    • 下記の文
      • ON EXCEPTION指定またはNOT ON EXCEPTION指定付きのACCEPT文
      • ON SIZE ERROR指定またはNOT ON SIZE ERROR指定付きのADD文
      • ON SIZE ERROR指定またはNOT ON SIZE ERROR指定付きのCOMPUTE文
      • INVALID KEY指定またはNOT INVALID KEY指定付きのDELETE文
      • ON EXCEPTION指定またはNOT ON EXCEPTION指定付きのDISPLAY文
      • ON SIZE ERROR指定またはNOT ON SIZE ERROR指定付きのDIVIDE文
      • CALL文
      • EVALUATE文
      • EXIT文、EXIT PROGRAM文、EXIT METHOD文
      • GO TO文
      • IF文
      • INSPECT文
      • INVOKE文
      • MERGE文
      • ON SIZE ERROR指定またはNOT ON SIZE ERROR指定付きのMULTIPLY文
      • PERFORM文
      • AT END指定、NOT AT END指定、INVALID KEY指定またはNOT INVALID KEY指定付きのREAD文
      • RETURN文
      • INVALID KEY指定またはNOT INVALID KEY指定付きのREWRITE文
      • SEARCH文
      • SORT文
      • INVALID KEY指定またはNOT INVALID KEY指定付きのSTART文
      • STRING文
      • UNSTRING文
      • INVALID KEY指定、NOT INVALID KEY指定、END-OF-PAGE指定またはNOT END-OF-PAGE付きのWRITE文

*1:翻訳オプションOPTIMIZEのデフォルト値はOPTIMIZEです。

*2:翻訳オプションARITHMETICのデフォルト値はARITHMETIC(18)です。

*3:中間結果については、COBOL文法書の“付録D 中間結果”を参照してください。

3 V10.1.0~V12.0.0 V12.1.0 PH14815

以下の条件の場合、COBOLアプリケーションの実行時に、正しく動作しないことがあります。

  1. 翻訳オプションINITVALUEに00以外を指定している。かつ、
  2. ファクトリデータおよびオブジェクトデータのうち作業場所節に初期値を持たないデータ項目を定義している。かつ、
  3. 2.のデータ項目に値を設定せずに参照した場合。
4 V11.1.0~V12.0.0 V12.1.0 PH15447

以下の条件の場合、COBOLプログラムの翻訳時に、コンパイラが異常終了することがあります。(*1)

*1:本障害は翻訳時のメモリの状態に依存します。そのため、発生条件に一致していても異常終了するケースは稀です。異常終了しない場合、正しい目的プログラムが作成されます。

[条件]

  1. 翻訳オプションPLTが有効(*2)な場合。

*2:翻訳オプションPLTのデフォルト値はPLTです。

注:V/Lは障害が存在する範囲を示します。

V12.0.0

ここに記載している情報は、V12.0.0で修正されている旧版で発生した障害一覧です。

項番 発生V/L 修正V/L P番号 現象
1 V10.1.0~V11.0.1 V12.0.0 PH08505

以下の条件の場合、コンパイラが異常終了する場合があります。このとき、特定のメッセージは出力されません。

以下の条件1、条件2のいずれかを満たす場合。

条件1)

  1. 以下の順序でREPLACE文を記述している。

    1. 書き方1のREPLACE文

    2. 書き方2のREPLACE文(REPLACE OFF)

    3. 書き方1のREPLACE文

    かつ、

  2. c.のREPLACE文の行に、別の文または注記を記述している場合。

    -例-

      REPLACE ==XXX== BY ==AAA==.
        :
      REPLACE OFF.
        :
      REPLACE ==XXX== BY ==BBB==. *> 注記
        :
    

条件2)

  1. 以下の順序でCOPY文およびREPLACE文を記述している。

    1. REPLACING指定またはDISJOINING/JOINING指定のあるCOPY文

    2. 書き方1のREPLACE文

    かつ、

  2. b.のREPLACE文の行に、別の文または注記を記述している場合。

    -例-

      COPY TEXT1 REPLACING ==XXX== BY ==AAA==.
        :
      REPLACE ==XXX== BY ==BBB==. *> 注記
        :
    
2 V10.1.0~V11.0.1 V12.0.0 PH11312

以下の条件の場合、コンパイラが以下のメッセージを出力して、異常終了することがあります。

JMN0102I-U 翻訳処理が続行不可能となりました.他の診断メッセージが表示されている場合は,それらを修正して,再度翻訳してみて下さい.(区名=JMNCOU,モジュール名=SABEMAC ,詳細コード=6692,行情報=nnnn.)

  1. cobolコマンドの翻訳リストを格納するファイル名を指定するオプション -P を指定している。かつ、

  2. 翻訳オプション LIST を指定している。かつ、

  3. COBOLソースファイルおよび登録集ファイルのコード系がUTF-8である(*1)。かつ、

  4. 手続き名、節名、段落名に63バイトを超える名前を記述している場合。

*1: 翻訳オプションSCS(UTF8)がデフォルトです。

注:V/Lは障害が存在する範囲を示します。

V11.1.0

ここに記載している情報は、V11.1.0で修正されている旧版で発生した障害一覧です。

項番 発生V/L 修正V/L P番号 現象
1 V10.1.0~V11.0.0 V11.1.0 PG81806

以下の条件の場合、翻訳時にコンパイラが異常終了することがあります。

  1. 次のいずれかの文を記述している。かつ、

    • CALL文

    • CANCEL文

    • INVOKE文

    • CSV-FORMATが指定されたSTRING文/UNSTRING文

  2. 1.の文が条件文の中に記述されている。かつ、

  3. 2.の条件文の階層(*1)が180以上である場合(*2)。

*1:階層とは、例えば次のような場合(階層が2)を表します。

        EVALUATE ~            ────┐
        WHEN ~                        │
          COMPUTE ~           ┐      │
              ON SIZE ERROR    │      │
                               │      │
            CALL  ~           階層2   階層1 
                               │      │
          END-COMPUTE          ┘      │
        END-EVALUATE           ────┘

*2:翻訳時のメモリの状態に依存するため、条件に一致しても異常終了しないことがあります。

2 V10.1.0~V11.0.0 V11.1.0 PH03685

以下の条件の場合、32bit版コンパイラで翻訳したときと64bit版コンパイラで翻訳したときで、CANCEL文の実行時に削除されるメモリサイズが異なります。

  1. 翻訳オプションTHREAD(SINGLE)が有効である(*1)。かつ、

  2. 副プログラムの共用オブジェクトファイル(lib~.so)を以下のいずれかの方法で作成している。かつ、

    • 別の副プログラムを静的に(単純構造で)結合している(*2)。または、

    • 別の副プログラムの共用オブジェクトファイルと動的リンク構造で結合している(*2)。

  3. 2.の副プログラムを以下のいずれかの方法(動的プログラム構造)で呼び出している。かつ、

    • 翻訳オプションDLOADを指定したプログラムから呼び出している。または、

    • データ名を指定したCALL文で呼び出している。

  4. 2.の副プログラムに対するCANCEL文を実行した場合。

*1:省略値はTHREAD(SINGLE)です。

*2:単純構造、動的リンク構造および動的プログラム構造については、「NetCOBOLユーザーズガイド」の「3.4 実行可能プログラムの構造」を参照してください。

3 V11.0.0 V11.1.0 PH03777

以下の条件の場合、COBOLプログラム翻訳時に異常終了することがあります。

  1. 以下のいずれかの項目を定義している。かつ、

    • 英数字編集項目

    • 日本語編集項目

  2. 1.の項目のPICTURE句の文字列を46文字以上(*1)記述している。かつ、

  3. 1.の項目を以下のいずれかの転記の受け取り側に指定している場合。

    • MOVE文

    • 暗黙のMOVE文が実行される文

*1:ここではPICTURE句に記述された文字の数を意味します。

例)下記2つはどちらも同じ形式ですが、文字の数は異なります。

  PIC  XBXXXXXXXX => 10文字
  PIC  XBX(8)     =>  6文字
4 V11.0.0 V11.1.0 PH04215

以下の条件の場合、COBOLプログラム実行時、INVOKE文またはメソッドの行内呼出しのパラメタの受け渡しが正しく行われず、実行結果が正しくない場合があります(*1)。

*1:パラメタが文字化け、または、途中で切れます。

  1. 実行時コード系がUnicodeである。かつ、

  2. 以下のいずれかに日本語項目または日本語文字定数を指定している。かつ、

    • INVOKE文USINGパラメタ、RETURNINGパラメタ

    • メソッドの行内呼び出しのパラメタ

  3. 2.から呼び出されるメソッドの仮パラメタにANY LENGTH句を指定した日本語項目を定義している。かつ、

  4. 以下のいずれかである場合。

    • 2.に日本語項目を指定している。かつ、
      2.のパラメタのエンコード方式と、3.のパラメタのエンコード方式が異なる場合。(*2)

    • 2.に日本語文字定数を指定している。かつ、
      3.の日本語項目のエンコード方式がUTF32の場合。

*2:パラメタのエンコード方式が異なる呼び出しは誤った書き方をしているにもかかわらず、翻訳エラーになりません。

5 V10.2.0~V11.0.0 V11.1.0 PH04233

以下の条件の場合、COBOLプログラムの翻訳時に以下の翻訳エラーメッセージが出力され、コンパイラが異常終了します。

  • V10.5以前

    システムエラー'errno=0xXXX'が'open REP,xxx'で発生しました.
    ** 診断メッセージ ** (xxx)
    xxx.cob 0: JMN0013I-S リポジトリファイルがオープンできません.出力された目的プログラムファイルは使用できません.

  • V11.0以降

    システムエラー'errno=0xXXX'が'iconv : error code=7, code no=2 from=sjisms to=utf8_4_ms'で発生しました.
    ** 診断メッセージ ** (xxx)
    xxx.cob 0: JMN0124I-U ソースファイル内に不当な文字があります.(区名=xxxxxx,行情報=xx.)翻訳を中止します.

  1. COBOLソースファイルおよび登録集ファイルのコード系がシフトJISである。かつ、

  2. 以下のいずれかの文字定数が半角カナを含む。かつ、

    • クラス名段落のAS指定の定数

    • 原文名定数(*)

  3. 2.の定数がUTF-8表現で以下の長さを超える場合。

    • クラス名段落のAS指定の定数の場合、320byte

    • 原文名定数の場合、240byte(*)

*:V10.5以前の場合、発生条件に該当しません。

6 V11.0.0 V11.1.0 PH04570

以下の条件のとき、COBOLプログラムの翻訳時、以下に示すいずれかの現象が発生する場合があります。

  • 現象1

    誤った構文に対し以下の翻訳エラーメッセージが出力されず、翻訳が正常終了(*1)します。

    JMN2038I-S VALUE句の定数の長さは,項目の長さ以下でなければなりません.項目長に合わせ,定数の右端を切り落とします.

    *1:作成された目的プログラム中のデータ項目は項目長に合わせて定数の右端を切り落とした定数値が設定された状態で動作します。

  • 現象2

    正しい構文に対し以下の翻訳エラーメッセージが出力され、翻訳に失敗します。

    JMN2106I-S 条件名のVALUE句のTHROUGHの後の値は,THROUGHの前の値より大きくなければなりません.

  1. 以下のいずれかのエンコードの日本語項目または日本語編集項目を記述している。かつ、

    • UTF32

    • UTF32LE

    • UTF32BE

  2. 1.のデータ項目または1.のデータ項目を条件変数とする条件名にVALUE句を指定している。かつ、

  3. 2.のVALUE句に以下のいずれかを満たす日本語定数(*2)を指定している。かつ、

    1. PICTURE句に指定した大きさを超えている

    2. THROUGH指定の前後に、大小順序の正しい2つの日本語定数を指定している

  4. 3.の日本語定数が41文字以上かつ80文字以下の場合。

*2: 日本語定数同士の連結式を含む。

[補足]

それぞれの現象は、以下の発生条件を満たす場合に発生します。

  • <現象1> 発生条件3.のa.

  • <現象2> 発生条件3.のb.

7 V10.1.0~V11.0.0 V11.1.0 PH05538

以下の条件1、条件2または条件3のいずれかを満たす場合、COBOLプログラムの実行時、基底場所節に宣言したデータ項目を使用する文で、異常終了(Segmentation Fault)または結果誤りが発生する場合があります。

  • 条件1

    1. 基底場所節に宣言したデータ項目を以下のいずれかの方法で使用している。かつ、

      1. 変数で添字付けしている。または、

      2. 最左端文字位置に変数を指定した部分参照をしている。

    2. 翻訳オプションOPTIMIZEが有効である場合。(省略値はOPTIMIZEです)

  • 条件2

    基底場所節に宣言したデータ項目を以下のいずれかの文に指定している場合。

    • INSPECT文

    • STRING文(中核)

    • UNSTRING文(中核)

  • 条件3

    1. 基底場所節にOCCURS句を指定したデータ項目を宣言している。かつ、

    2. 1.のデータ項目をINITIALIZE文に指定している場合。

8 V10.1.0~V11.0.0 V11.1.0 PH05861

以下の条件の場合、COBOLプログラムの実行時、部分参照した外部10進項目から数字編集項目または浮動小数点項目への転記において、送出し側を部分参照する範囲が1桁左にずれる誤りが発生します。

  1. 送出し側が符号付き外部10進項目、受取り側が数字編集項目または浮動小数点項目のMOVE文を記述している(*1)。かつ、

  2. 送出し側項目のSIGN句にSEPARATE CHARACTER指定(*2)がある。かつ、

  3. 送出し側項目を部分参照している。かつ、

  4. 3.の部分参照の長さを定数で指定している場合。

*1: 暗黙のMOVE文を含む。

*2: TRAILING SEPARATE指定

9 V10.1.0~V11.0.0 V11.1.0 PH06489

以下の条件の場合、翻訳時にコンパイラが異常終了して翻訳を中止する場合があります。特定のメッセージはありません。

  1. 項目長が8の倍数の内部ブール項目を記述している。かつ、

  2. 1.の項目にSYNCHRONIZED句を指定している。かつ、

  3. 1.の項目にVALUE句を指定している。かつ、

  4. 1.の項目が次のいずれかの条件を満たしている。かつ、

    1. 1.の項目のレベル番号が01または77である。または、

    2. 1.の項目の終端位置から1.の項目を含むレコードの終端位置までの長さ(*)が以下の長さより短い。

      • 1.の項目にOCCURS句を指定していない場合:1バイト

      • 1.の項目にOCCURS句を指定している場合:1バイト×繰り返し回数の最大値

  5. 1.の項目を次のいずれかの節に記述している場合。

    • プログラム定義の定数節

    • クラスのオブジェクト定義の作業場所節

    • クラスのオブジェクト定義の定数節

    • クラスのメソッド定義の定数節

    • プログラム定義の作業場所節

    • クラスのファクトリ定義の作業場所節

    • クラスのファクトリ定義の定数節

    • 分離されたメソッド定義の作業場所節

    • 分離されたメソッド定義の定数節

*: 終端位置は、レコード先頭からのオフセット+項目長が指す位置のことを表します。

1.の項目を含むレコード
  ┌──────────────┬─────┬─────┐
  │                            │1.の項目  │          │
  └──────────────┴─────┴─────┘
                                            ↑          ↑
                            1.の項目の終端位置          │
                                                        │
                          1.の項目を含むレコードの終端位置
10 V10.1.0~V11.0.0 V11.1.0 PH06787

以下の条件1または条件2のいずれかを満たす場合、COBOLプログラムの実行時、仮パラメタに正しく値を受渡しできない場合があります。

  • 条件1

    1. 次の何れかの呼出しを使用している。かつ、

      • INVOKE文によるメソッド呼出し

      • メソッドの行内呼出し

    2. 1.の呼出しで次の何れかのパラメタを指定している。かつ、

      • BY CONTENTを指定したパラメタ

      • 定数節のデータ項目

      • 文字定数

    3. 1.の呼出し先の仮パラメタにJUSTIFIED句を指定している。かつ、

    4. 2.のパラメタの長さと3.の仮パラメタの長さが異なる場合。

  • 条件2

    1. 次の何れかの呼出しを使用している。かつ、

      • INVOKE文によるメソッド呼出し

      • メソッドの行内呼出し

    2. 1.の呼出しで次の何れかのパラメタを指定している。かつ、

      • BY CONTENTを指定したパラメタ

      • 定数節のデータ項目

      • 文字定数

    3. 1.の呼出し先の仮パラメタにBLANK WHEN ZERO句を指定している。かつ、

    4. 2.のパラメタから3.の仮パラメタへの転記の結果がゼロとなる場合。

補足:

  • 仮パラメタは手続き部の見出しのUSING指定またはRETURNING指定に指定されたデータ項目を指します。

  • BY CONTENT指定のパラメタ受渡しでは仮パラメタへの転記が行われます。

    詳細については、COBOL文法書11.8.5.5.2を参照ください。

条件1の例)

[呼出し元] 
  <省略>
  WORKING-STORAGE SECTION.
  01 VAR PIC X(3).
  01 OBJ OBJECT REFERENCE CCC.
  PROCEDURE DIVISION.
       MOVE "ABC" TO VAR.
       INVOKE CCC "NEW" RETURNING OBJ.
       INVOKE OBJ "MMM" USING BY CONTENT VAR.
[呼出し先]
  CLASS-ID. CCC INHERITS FJBASE.
  <省略>
  METHOD-ID. MMM.
  DATA DIVISION.
  WORKING-STORAGE SECTION.
  LINKAGE SECTION.
  01 VAR PIC X JUSTIFIED.
  PROCEDURE DIVISION USING VAR.
       DISPLAY "VAR=" VAR.
  END METHOD MMM.
[実行結果]
  VAR=A    ←  正しくは"C"

条件2の例)

[呼出し元]
  <省略>
  WORKING-STORAGE SECTION.
  01 OBJ OBJECT REFERENCE CCC.
  01 RET-VAL PIC 9.
  PROCEDURE DIVISION.
       INVOKE CCC "NEW" RETURNING OBJ.
       MOVE OBJ::"MMM" ("000") TO RET-VAL.
  END PROGRAM PPP.
[呼出し先]
  CLASS-ID. CCC INHERITS FJBASE.
  <省略>
  METHOD-ID. MMM.
  DATA DIVISION.
  WORKING-STORAGE SECTION.
  LINKAGE SECTION.
  01 VAR PIC 9(3) BLANK WHEN ZERO.
  01 RET-VAL PIC 9.
  PROCEDURE DIVISION USING VAR RETURNING RET-VAL.
       DISPLAY "VAR=" VAR.
  END METHOD MMM.
[実行結果]
  VAR=000  ←  正しくは"   "
11 V10.1.0~V11.0.0 V11.1.0 PH08595

以下の条件の場合、翻訳オプションOPTIMIZEを指定すると、翻訳時にコンパイラが異常終了する場合があります。

  1. 翻訳オプションOPTIMIZE(*1)が有効である。かつ、

  2. 繰返し処理を記述している。かつ、

  3. 2.の繰返し処理に以下を記述している場合

    • 指標名

    • 部分参照

    • 添字付け項目

    • 乗算

*1:省略値はOPTIMIZEです。

本障害が発生した場合、必ず翻訳時にコンパイラが異常終了します。コンパイラが異常終了しない場合、正しいオブジェクトを生成します。

12 V10.1.0~V11.0.0 V11.1.0 PH10340

以下の条件の場合、COBOLプログラムが実行時メッセージ(JMP0024I-U)を出力して異常終了するとき、エラー事象と無関係の行番号が実行時メッセージに表示されます。

  1. デッドロック出口スケジュールサブルーチン(COB_DEADLOCK_EXIT)を呼び出すプログラムを記述している。かつ、

  2. 1.のプログラムまたは上位のプログラムにデッドロック出口を記述していない場合。

注:V/Lは障害が存在する範囲を示します。

V11.0.0

ここに記載している情報は、V11.0.0で修正されている旧版で発生した障害一覧です。

項番 発生V/L 修正V/L P番号 現象

1

V10.1.0

V10.5.0A

V11.0.0

PG76651

以下の条件の場合、COBOLプログラム実行時に、長さの異なる日本語項目(日本語編集項目、組込み関数を含む)同士の大小比較の結果が正しくない問題を修正しました。

  1. 翻訳オプションRCS(UTF16,LE)またはRCS(UCS2,LE)が有効である(*1)。かつ、 (*1)翻訳オプションの省略値はRCS(UTF16,LE)です。
  2. 日本語項目と、日本語項目または日本語文字定数の大小比較である。かつ、
  3. 少なくとも一方が部分参照された項目またはANY LENGTH句の指定がある項目である。かつ、
  4. 比較対象の長さが異なる場合。

2

V10.1.0

V10.5.0A

V11.0.0

PG88107

以下の条件の場合、int型2進整数項目を使用したCOBOLプログラムの翻訳時に、コンパイラが以下のメッセージを出力して異常終了します。

「JMN0102I-U 翻訳処理が続行不可能となりました.他の診断メッセージが表示されている場合は,それらを修正して,再度翻訳してみて下さい.(区名=JMN300,モジュール名=SC30MKTT,詳細コード=3209,行情報=nnn.)」

以下のいずれかの文を記述している場合に発生します。

  • 小数部のみの数字項目をint型2進整数項目へ転記する文
  • 小数部のみの演算結果をint型2進整数項目へ受け取る算術文

3

V10.1.0

V10.5.0A

V11.0.0

PG88615

以下の条件の場合、COBOLプログラムの翻訳時に、COBOLコンパイラが不当なJMN1477I-Iのメッセージを出力する場合があります。

  1. 特殊名段落(SPECIAL-NAMES)を宣言している。かつ、
  2. 特殊名段落に重大コードSのコーディング誤りがある場合。

補足) メモリの状態に依存するため、発生条件を満たしても現象が発生しない場合があります。

4

V10.1.0

V10.5.0A

V11.0.0

PG88616

以下の[条件1]または[条件2]の場合、COBOLプログラムの翻訳時に、COBOLコンパイラが以下の例のような不当なメッセージを出力する場合があります。

例)

JMN1019I-W line-no 標識領域は'-','*','/','D'または空白でなければなりません.空白とみなします.

JMN1123I-S line-no 許されない語'nnn'が現れました.次の認識できる句,段落,節または部まで無効になります.

JMN1255I-S line-no 01レベル項目の指定なしに02~49レベル項目が指定されています.01レベル項目とみなします.

JMN1356I-W line-no 見出し部中に誤った語'nnn'が指定されています.次の段落または部まで無効になります.

line-no: 行番号

nnn : 数字

※ 上記のメッセージは一例です。他のメッセージの場合もあります。

[条件1]

  1. Oracle Pro*COBOLのprecobコマンドを使用して、埋込みSQL文を含むCOBOLプログラムをプリコンパイルしている。かつ、
  2. INSDBINFコマンドを使用して、1.のPro*COBOLプログラムからCOBOLプログラムを生成している。かつ、
  3. 翻訳オプション"NUMBER"を指定して、2.で生成したCOBOLプログラムを翻訳した場合。

または、

[条件2]

  1. Symfowareのsqlpcobコマンドにオプション"-g"を指定して、埋込みSQL文を含むCOBOLプログラムをプリコンパイルしている。かつ、
  2. 翻訳オプション"NUMBER"を指定して、1.で生成したCOBOLプログラムを翻訳した場合。

5

V10.1.0

V10.5.0A

V11.0.0

PG89665

以下の条件の場合、COBOLプログラムの翻訳時に、以下の不当な翻訳時メッセージが出力され、COBOLプログラムが翻訳できません。

「JMN2206I-S KEY IS句のデータ名'xxxxx'は,アドレス可変項目であってはなりません.」

  1. OCCURS句のKEY IS指定を記述している。かつ、
  2. 1.に指定したデータ名がレコードの中の可変位置にある場合。

6

V10.2.0

V10.5.0A

V11.0.0

PG94893

以下の条件の場合、「指定したデバッグプログラムが見つからないため、開始に失敗しました。」のメッセージが表示され、デバッガを正常起動できないことがあります。

  1. RHEL6.0以降のLinux(64)サーバに、下記に示す製品をインストールしている。かつ、
    • Linux(64) NetCOBOL シリーズ 開発・運用パッケージ
    • Linux(64) Interstage Job Workload Server(以降、IJOBと略します)
  2. クライアント(Windows)に下記に示す製品をインストールしている。かつ、
    • Windows(32) NetCOBOL シリーズ 開発パッケージ V10.3.0以降
    • NetCOBOL V10.3.0以降で提供されるInterstage Stduio 向けCOBOLプラグイン
    • Interstage Studio Standard-J Edition V10.0以降
  3. Interstage Studioにて、Linux(64)をサーバとするサーバ連携情報を設定している。かつ、
  4. サーバ上で、環境変数CBR_ATTACH_TOOLを設定し、Interstage Studioをクライアントとするアタッチデバッグが可能な設定にしている。かつ、
  5. 被デバッグアプリケーションとなるCOBOLアプリケーションを、3.で設定したリモートサーバをターゲットとして、デバッグモードでリモートビルドしている。かつ、
  6. 5.で作成したCOBOLアプリケーションを、IJOBのワークユニットに配備している。かつ、
  7. Interstage Studioで、アタッチデバッグによるリモートデバッガを起動し、サーバ側被デバッグアプリケーションからの接続待ち状態にしている。かつ、
  8. 6.で配備したワークユニットを起動し、5.で作成したCOBOLアプリケーションを呼び出す操作を実行した場合。

7

V10.1.0

V10.5.0A

V11.0.0

PG97116

以下の条件の場合、COBOLプログラムの翻訳時に、コンパイラが以下のメッセージを出力して異常終了します。

翻訳処理が続行不可能となりました.他の診断メッセージが表示されている場合は,それらを修正して,再度翻訳してみて下さい.(区名=JMNRAL,モジュール名=SABEMAC ,詳細コード=6202,行情報=nnn.)

  1. 翻訳オプションBINARY(BYTE)を指定している。かつ、
  2. 数字を引数とするMAX関数またはMIN関数を記述している。かつ、
  3. 2.の関数の引数が3個以内である。かつ、
  4. 2.の引数に2進項目を指定している。かつ、
  5. 4.の2進項目の領域長が1,3,5,6,7バイトのいずれかである(*1)。かつ、
  6. 2.の関数値が格納される一時的なデータ項目の桁数(*2)が19以上30以下である。かつ、
  7. 2.の引数に定数を指定していない。かつ、
  8. 2.の引数に浮動小数点項目を指定していない。かつ、
  9. 2.の引数にALLを添字とする項目を指定していない。

*1:以下の2進項目が該当します。

   ---------------------------------------------
    桁数                    割り当てられる領域長
    符号付き   符号なし  
   ---------------------------------------------
    1 ~ 2      1 ~ 2      1
    5 ~ 6      5 ~ 7      3
    10 ~ 11   10 ~ 12     5
    12 ~ 14   13 ~ 14     6
    15 ~ 16   15 ~ 16     7
   ---------------------------------------------

*2:関数値が格納される一時的なデータ項目は以下の桁数となります。

整数部桁=全引数の整数部桁数のうち最大の値

小数部桁数=全引数の小数部桁数のうち最大の値

8

V10.1.0

V10.5.0A

V11.0.0

PG98620

以下の条件の場合、COBOLプログラムの翻訳時に、コンパイラが翻訳メッセージを出力せずに異常終了する場合があります。

  1. 翻訳オプションOPTIMIZEが有効である(*1)。かつ、
  2. COBOLソースに、呼ばれるプログラムの名前を一意名で指定しているCALL文を記述している。かつ、
  3. 2.のCALL文にUSING指定を記述している。かつ、
  4. 2.のCALL文にRETURNING指定を記述している。かつ、
  5. ポインタデータ項目を設定、または参照している。かつ、
  6. 内部プログラムが存在する。かつ、
  7. 6.の手続き部の見出しにUSING指定を記述していない場合。

*1:翻訳オプションのデフォルト値は製品の動作OSにより異なります。

  • Solaris、Linuxの場合、デフォルトはOPTIMIZEです。
  • Windowsの場合、デフォルトはNOOPTIMIZEです。

9

V10.1.0

V10.5.0A

V11.0.0

PG98742

以下の条件の場合、COBOLプログラムの翻訳時にコンパイラが異常終了する、または、実行時に正しく動作しない場合があります。

【作業場所節、定数節のいずれかにデータ項目を宣言した場合】

  1. TYPE句を指定した項目を従属するレベル番号01の集団項目を定義している。かつ、
  2. 1.の集団項目にREDEFINES句を指定している。かつ、
  3. 1.のデータ項目の長さが2.で再定義されるデータ項目の長さより短い場合。

または

【ファイル節にデータ項目を宣言した場合】

  1. TYPE句を含むレコード記述項を定義している。かつ、
  2. 同じファイル記述項に1.のレコード記述項とは別のレコード記述項を定義している(*1)。 かつ、
  3. 1.のレコード記述項の長さが2.のレコード記述項の長さよりも短い場合。

*1: ファイル節で同じファイル記述項にレコード記述項を2つ以上書くと、レコード記述項の領域が暗に再定義されます。


例1) 作業場所節、局所記憶節、定数節のいずれかにデータ項目を宣言した場合

     01 D1 PIC X(20).     *> SIZE 20 BYTE   D2よりD1が長い。
     01 D2 REDEFINES D1.  *> SIZE  8 BYTE
       02 D21 TYPE T1.    *> SIZE  8 BYTE
     01 T1 TYPEDEF.
       02 TD1 PIC X(8).   *> SIZE  8 BYTE

例2) ファイル節にデータ項目を宣言した場合

  FD FILE1.
    01 R1 PIC X(20).     *> SIZE 20 BYTE、R2よりR1が長い
    01 R2 TYPE T2.       *> SIZE  8 BYTE、暗に再定義され,R1とR2は
                         *> 同じ領域に割り付く
    01 T2 TYPEDEF.
      02 TD2 PIC X(8).   *> SIZE  8 BYTE

10

V10.1.0

V10.5.0A

V11.0.0

PG99190

以下の条件の場合、COBOLプログラムの翻訳時に、コンパイラが以下のメッセージを出力して異常終了する場合があります。

「JMN0124I-U ソースファイル内に不当な文字があります.(区名=JMNALO,行情報=0.)翻訳を中止します.」

  1. 翻訳オプションRCS(UTF16), ENCODE(UTF8,UTF16)またはENCODE(UTF8,UTF32)を指定している。かつ、
  2. 翻訳オプションCHECK(PRM),CHECK(ALL)またはSAIを指定している。かつ、
  3. ソースプログラムのコード系がSJISである。かつ、
  4. CALL文またはINVOKE文のUSING BY CONTENT指定に文字定数(日本語文字定数は除く)を指定している。かつ、
  5. 4.の文字定数が日本語文字を含む場合。

11

V10.1.0

V10.5.0A

V11.0.0

PH01579

以下の条件の場合、COBOLプログラム翻訳時、実行時に異常終了するオブジェクトプログラムを作成するにも関わらず、翻訳メッセージが出力されません。

  1. CALL文のUSING指定に節名または段落名を書いた場合。

12

V10.1.0

V10.5.0A

V11.0.0

PH01893

以下の条件の場合、cobdependコマンドの実行時に異常終了する場合があります。

  1. パスの長さが4096バイトを超えるファイルを使用する。かつ、

[条件1]

  1. COBOLOPTS環境変数またはcobdependコマンドの引数によって、-do翻訳オプションでディレクトリを指定している。かつ、
  2. 文字列の長さが次の条件を満足する場合。
    • 指定したディレクトリ名の最後の文字が"/"、かつ次の文字列の長さが4100バイトの場合。
      ディレクトリ名 + COBOLソースファイルの拡張子を除いたファイル名
    • 指定したディレクトリ名の最後の文字が"/"以外、かつ次の文字列の長さが4099バイトまたは4100バイトの場合。
      ディレクトリ名 + "/" + COBOLソースファイルの拡張子を除いたファイル名

または、

[条件2]

  1. COBOLOPTS環境変数またはcobdependコマンドの引数によって、次のいずれかの翻訳オプションでディレクトリを指定している。かつ、
    -R
    -dr
  2. COBOLソースファイルにクラス名段落またはリポジトリ段落を記述している。かつ、
  3. 次のいずれかの文字列の長さが4092バイトを超える場合。
    - ディレクトリ名(※1) + クラス名段落(CLASS-ID)のクラス名
    - ディレクトリ名(※1) + リポジトリ段落のクラス指定子

または、

[条件3]

  1. COBOLOPTS環境変数またはcobdependコマンドの引数によって、-m翻訳オプションでディレクトリを指定している。かつ、
  2. COPY文で登録集原文にXMDLIBを指定している。かつ、
  3. 次の文字列の長さが4096バイトを超える場合。
    ディレクトリ名(※1) + COPY文の原文名 + 画面帳票定義体の拡張子(※2)

または、

[条件4]

  1. COBOLOPTS環境変数またはcobdependコマンドの引数によって、-f翻訳オプションでディレクトリを指定している。かつ、
  2. COPY文で登録集原文にXFDLIBを指定している。かつ、
  3. 次の文字列の長さが4096バイトを超える場合。
    ディレクトリ名(※1) + COPY文の原文名 + ファイル定義体の拡張子(※3)

または、

[条件5]

  1. COBOLOPTS環境変数またはcobdependコマンドの引数によって、-I翻訳オプションでディレクトリを指定している。かつ、
  2. COPY文で原文名または原文名定数を指定している。かつ
  3. 次の文字列の長さが4096バイトを超える場合。
    - ディレクトリ名(※1) + COPY文の原文名 + 登録集の拡張子(※4)
    - ディレクトリ名(※1) + COPY文の原文名定数

または、

[条件6]

  1. cobdependコマンドの引数に-Xnocallが指定されていない。かつ、
  2. 次のファイルが存在していない。かつ、
  3. CALL文で指定するプログラム名 + 次の拡張子の何れかである。かつ、
    - .cbl
    - .cob
    - .cobol
  4. COBOLOPTS環境変数またはcobdependコマンドの引数によって、-do翻訳オプションでディレクトリを指定している。かつ、
  5. 次の文字列の長さが4094バイトを超える場合。 ディレクトリ名(※1) + CALL文で指定するプログラム名

※1 オプションに指定したディレクトリ名の最後の文字が"/"でない場合は"/"を付加した ディレクトリ名になります。

※2 環境変数SMED_SUFFIXに"None"以外が指定されている場合はSMED_SUFFIXの設定値、それ以外は次の拡張子になります。

- .pmd

- .pxd

- .smd

※3 環境変数FFD_SUFFIXに"None"以外が指定されている場合はFFD_SUFFIXの設定値、それ 以外は次の拡張子になります。

- .ffd

※4 環境変数COB_LIBSUFFIXに"None"以外が指定されている場合はCOB_LIBSUFFIXの設定値、それ以外は次の拡張子になります。

- .cbl

- .cob

- .cobol

13

V10.1.0

V10.5.0A

V11.0.0

PH02032

以下の条件の場合、COBOLプログラムの翻訳時に、コンパイラが正しい定数の継続に対して以下の翻訳時メッセージを出力する場合があります。

「JMN1022I-S 定数の終わりの引用符がありません.B領域の終わりまでを定数とみなします.」

「JMN1021I-S 定数の継続において,後の行は,標識領域にハイフンを書き,引用符で始めなければなりません.定数が継続されているものとみなします.」

  1. REPLACE文を記述している。かつ、
  2. 1.のREPLACE文による置き換えが行われる範囲(*1)に以下の記述がある場合。
    a) COPY文を記述している。かつ、
    b)a)のCOPY文の前(*2)がピリオド、右括弧、左括弧、コロンのいずれでもない。かつ、
    c)a)のCOPY文より後ろに複数の行に継続する定数(*3)を記述している。かつ、
    d) a)のCOPY文とc)の定数との間に複数の行に継続する文字列(*4)を記述していない。

*1:次のREPLACE文が現れるまで、または、翻訳単位の終わりまで

*2:空白、注釈行を除いた、直前の文字

*3:文字定数、16進文字定数、日本語定数、ブール定数

*4:日本語利用者語以外のCOBOLの語、PICTURE句の文字列

14

V10.1.0

V10.5.0A

V11.0.0

PH02168

以下の条件の場合、COBOLプログラムの翻訳時に、以下の不当な翻訳時メッセージが出力されます。

「JMN1479I-S 連結式が最大長を超えています.最大長までを連結します.」

また、上のメッセージに加えて、以下のメッセージも出力される場合があります。

「JMN0124I-U ソースファイル内に不当な文字があります.(区名=JMNxxx,行情報=nn.) 翻訳を中止します.」

  1. COBOLソースのコード系がUTF-8である。かつ、
  2. 日本語文字定数(*1)同士の連結式が記述されている。かつ、
  3. 2.で連結された文字数が54~80文字の場合。

(*1) 記号定数や名前付き定数を含む。

15

V10.1.0

V10.5.0A

V11.0.0

PH02265

以下の条件の場合、翻訳時エラーにならない場合がある問題を修正しました。

  1. プログラム、クラスまたはメソッドの外部名に連結式を記述している。かつ、
  2. 連結式の先頭に以下のいずれかを記述している。かつ、
    • 文字定数
    • 日本語文字定数
  3. 連結式中に以下のいずれかを記述している場合。
    • 16進文字定数
    • 日本語16進文字定数

注:V/Lは障害が存在する範囲を示します。

V10.5.0

ここに記載している情報は、V10.5.0で修正されている旧版で発生した障害一覧です。

項番 発生V/L 修正V/L P番号 現象
1 V10.1.0~V10.3.0 V10.5.0 PG88850 以下の条件の場合、COBOLプログラム実行時にプログラムが異常終了する、または、比較・演算・転記の結果が正しくない場合があります。
  1. 翻訳オプションOPTIMIZEが有効である。かつ、
  2. 以下のデータ項目を宣言している。かつ、
    1. 以下のいずれかのレコード内のデータ項目である。
      • オブジェクト定義・ファクトリ定義のファイルのレコード
      • オブジェクト定義・ファクトリ定義の作業場所節内のレコード
    2. 以下のいずれかの属性である。かつ、
      • 18桁以下の2進項目
      • 指標データ項目
    3. OCCURS句の指定がない項目である。かつ、
    4. OCCURS句の指定がある集団項目に従属していない。かつ、
    5. レコード内の位置が、OCCURS DEPENDING ON句の指定がある項目の後でない。
  3. 手続き部で、2.のデータ項目と領域の重なりのあるデータ項目を使用していない。かつ、
  4. 手続き部で、2.の項目に値を設定している。
2 V10.1.0~V10.3.0 V10.5.0 PG92450 以下の条件の場合、翻訳オプションOPTIMIZEが有効なプログラムの実行時に、ゼロ抑制の数字編集転記において先行ゼロ列に不正な文字(ゼロ)が転記されることがあります。
  1. 翻訳オプションOPTIMIZE(注1)が有効である。かつ、
  2. 数字編集項目へ転記する文を記述している。かつ、
  3. 2.の文の位置から前方100行以内(注2)に、以下の記述がない。かつ、
    • 段落
    • 条件文
    • 手続き分岐文(注3)
  4. 2.の数字編集項目には、編集方法にゼロ抑制のみを指定している(PICTURE句の文字列に'9','Z','*'を組み合わせて使用している)場合。
(注1)翻訳オプションのデフォルト値はOPTIMIZEです。
(注2)注記行、空白行はカウントしません。本障害はコンパイラの内部条件に影響されるため、発生条件に一致しても正しく転記される場合があります。
(注3)次の実行文でない文に制御の明示的な移行を起こす文を指します。

注:V/Lは障害が存在する範囲を示します。

V10.3.0

ここに記載している情報は、V10.3.0で修正されている旧版で発生した障害一覧です。

項番 発生V/L 修正V/L P番号 現象
1 V10.1.0~V10.2.0 V10.3.0 PG81352 以下の環境および発生条件を満たす場合、Windows側のNetCOBOL Studioまたは Interstage StudioからLinux(64)サーバに接続したとき、「サーバへの接続に失敗しました」 のメッセージが表示され、Linux(64)サーバに接続できません。
【環境】
Linux(64)システムにて、IPv6を無効にしている場合。
【発生条件】
  1. Linux(64)システムにて、enable-rds.shを実行してNetCOBOLリモート開発サービスを開始した。かつ、
  2. Windows側のNetCOBOL StudioまたはInterstage Studioから、1.のLinux(64)システムに接続しようとした場合。
2 V10.1.0~V10.2.0 V10.3.0 PG85632 以下の条件のとき、insdbinfが出力するCOBOLプログラムに誤りがあるため、NetCOBOLコンパイラが 翻訳時に異常終了する、または、コンパイラが出力する行番号が正しくないことがあります。
【環境】
Pro*COBOLを使用している。
【発生条件】
  1. Pro*COBOLを使用している。かつ、
  2. insdbinf を使用している。かつ、
  3. COBOLプログラム中に埋込みSQL文のINCLUDE文を使用している。かつ、
  4. インクルードするCOBOLプログラムの一連番号領域に行番号を設定している場合。
3 V10.1.0~V10.2.0 V10.3.0 PG85966 以下の条件のとき、誤ったデバッグ情報ファイルが出力され、正しくデバッグすることが できません。
【発生条件】
  1. 翻訳オプションTESTを指定してCOBOLプログラムを翻訳している。かつ、
  2. 原文名定数が指定されたCOPY文を記述している。かつ、
  3. 2.で取り込まれた登録集(注1)に原文名が指定されたCOPY文を記述している。かつ、
  4. コンパイラが異常終了した場合(注2)
(注1)登録集が入れ子になっている場合は、最後の階層に至るまでのいずれかの登録集
(注2)通常時のコンパイラが出力する翻訳時メッセージが出力されず、「0~3」以外の 復帰コードが返却されます。
4 V10.1.0~V10.2.0 V10.3.0 PG86728 COBOLプログラムの翻訳時に、コンパイラが以下の不当な翻訳時メッセージを出力して、 翻訳できなくなる場合があります。
「JMN5546I-S メソッド'mmmmm'のインタフェースは,再定義されるメソッドのインタフェースに 適合していなければなりません.メソッド'mmmmm'は無効になります.」
【発生条件】
  1. OVERRIDE指定のメソッド定義がある。かつ、
  2. 1.のメソッドと親クラスに定義された同名のメソッドのUSINGパラメタまたは RETURNINGパラメタが以下の場合
    1. メソッドのパラメタの一方が集団項目、もう一方は集団項目または英数字項目。かつ、
    2. パラメタのサイズが一致する。

注:V/Lは障害が存在する範囲を示します。

V10.2.0

ここに記載している情報は、V10.2.0で修正されている旧版で発生した障害一覧です。

項番 発生V/L 修正V/L P番号 現象
1 V10.1.0 V10.2.0 PG73504 以下の条件の場合、行番号情報埋込みツール(insdbinf)使用時に、COBOLコンパイラが以下の 翻訳メッセージを出力して異常終了することがあります。
JMN1059I-U 登録集の処理のための主記憶が不足しています.
  1. Oracle Pro*COBOLを使用してPro*COBOLプログラムを翻訳している。かつ、
  2. 1.のPro*COBOLプログラムに以下の記述がある。かつ、
    1. INCLUDE文を指定している。かつ、
    2. a.のINCLUDE文の次の行がコメント行である。かつ、
    3. b.の次の行がコメント行でない。かつ、
    4. a.のINCLUDE文に指定しているINCLUDEファイル内に「END-EXEC」がある。かつ、
    5. b.の行数とd.のINCLUDEファイル内にある最後の「END-EXEC」の行数が同じである。
  3. insdbinfコマンドを使用して、2.のPro*COBOLプログラムからCOBOLプログラムを生成している。かつ、
  4. 3.で生成したCOBOLプログラムを翻訳した。
例:
  Pro*COBOLプログラム
  098行目:000098      EXEC SQL
  099行目:000099          INCLUDE INC01     *> 発生条件 2)-a
  100行目:000100      END-EXEC.
  101行目:000101*       コメント行            *> 発生条件 2)-b, 2)-e
  102行目:000102      EXEC SQL              *> 発生条件 2)-c

  INCLUDEファイル(ファイル名:INC01.cob)
  099行目:000099      EXEC SQL
  100行目:000100          END   DECLARE  SECTION
  101行目:000101      END-EXEC.             *> 発生条件 2)-d, 2)-e
2 V10.1.0 V10.2.0 PG73470 以下の条件の場合、翻訳時に誤った指摘メッセージが出力されます。(注1)
  1. 翻訳オプションFLAGSW(STDM)またはFLAGSW(STDI)を指定している。かつ、
  2. CALL文にUSING指定を記述している。かつ、
  3. USINGに指定したパラメタが5個以下の一意名である。かつ、
  4. 3.の一意名に添字または部分参照を1個以上指定している。かつ、
  5. 4.の添字または部分参照に一意名を指定している。かつ、
  6. 3.と5.の一意名の個数の合計が6個以上である。
(注1)JMN9333I-W (STD)CALL文中のUSING句に指定した作用対象の個数は5個 以下でなければなりません。処理を続行します。
3 V10.1.0 V10.2.0 PG77217 以下の条件で作成された実行形式ファイルを対話型デバッガにてデバッグするとき、 対話型デバッガがアベンドするため、デバッグが開始できません。
  1. COPY文で登録集を取り込んでいる。かつ、
  2. 取り込んだCOPY登録集が手続き部見出しのみである。かつ、
  3. 1.と2.にあてはまるソースプログラムを、翻訳オプションTESTを指定して翻訳した。
4 V10.1.0 V10.2.0 PG74245 以下の条件の場合、翻訳時異常終了することがあります。
  1. 手続き部の規模が比較的大きい(目安として1万行以上(注2))プログラムである。 かつ、
  2. オブジェクト指定子を使用している。
(注2)1万行以上はあくまでも目安です。書き方によっては1万行以下で発生する 可能性もあります。ただし一行に複数の文を書くようなことをしていない、標準的なプログラミング形式であれば、 数万行以上なければ、現象発生の可能性は極めて低いです。
5 V10.1.0 V10.2.0 PG77383 以下の条件の場合、実行時に正しい実行結果が得られないことがあります。
  1. 翻訳オプションOPTIMIZEが有効である。(注3-1)かつ、
  2. 内部10進項目を数字編集項目へ設定している文を記述している。かつ、
  3. 内部10進項目と数字編集項目のけた数は、「整数部のけた数が同じ、かつ、 小数部がない」である。かつ、
  4. 数字編集項目は、編集方法にゼロ抑制のみを指定している(PICTUREの文字列には '9','Z','*'のみを使用している)。かつ、
  5. 2.の文の前に、データ項目(または中間結果)を2.の内部10進項目へ設定する文 (注3-2)を記述している。かつ、
  6. 5.のデータ項目(または中間結果)のけた数と2.の内部10進項目のけた数の 関係が次のようになっている。かつ、
         ------------------------------------------------------
             データ項目(または中間結果)    内部10進項目
         ------------------------------------------------------
                  2                             3
                  4                             5
                  6                             7
                  8                             9
                 10                            11
                 12                            13
                 14                            15
                 16                            17
         ------------------------------------------------------
    
  7. 5.のデータ項目(または中間結果)と2.の内部10進項目の両方に小数部がない。
(注3-1)デフォルトの翻訳オプションはNOOPTIMIZEです。
(注3-2)数字転記はMOVE文だけでなく、COMPUTE文などの暗黙に転記が 発生する場合も該当します。
6 V10.1.0 V10.2.0 PG75097 以下の環境・発生条件の場合、Windows版 NetCOBOL Studioのリモートデバッグ機能を使用して、 Red Hat Enterprise Linux (for Intel64)上で動作するCOBOLアプリケーションに対するリモートデバッグを開始する際、 「デバッガ本体部またはエンジン部でエラーが発生しました。(65535)」が表示され、デバッグを開始できません。
【環境】
NetCOBOLのリモート開発において、サーバ環境が以下に該当する場合、本現象が発生します。
  1. サーバがRed Hat Enterprise Linux (for Intel64)。かつ、
  2. サーバには以下のいずれかの製品がインストールされている。かつ、
    • Linux (x64) NetCOBOL Enterprise Edition 開発・運用パッケージ V10.1.0
    • Linux (x64) NetCOBOL Enterprise Edition 運用パッケージ V10.1.0
  3. サーバ上で使用しているgdbが7.0版以降である(RHEL 5.5以降をインストールしている場合、 またはgdb-7.0以降を単独でインストールしている場合が該当します)。
【発生条件】
COBOLアプリケーションを、Windows版 NetCOBOL Studioからリモートデバッグする場合
7 V10.1.0 V10.2.0 PG77463 以下の条件の場合、翻訳時にCOBOLコンパイラが以下のメッセージを出力して異常終了することがあります。
「プログラム名xxxxxxxx」 0: JMN0102I-U 翻訳処理が続行不可能となりました. 他の診断メッセージが表示されている場合は,それらを修正して,再度翻訳してみて下さい. (区名=JMNRAL, モジュール名=SABEMAC, 詳細コード=6202, 行情報=yy.)
  1. 表示ファイル機能を使用している。かつ、
  2. 表示ファイルの特殊レジスタ (注4)を比較条件の作用対象に指定している。かつ、
  3. 2.の特殊レジスタを日本語項目で修飾している。
(注4)表示ファイルの特殊レジスタ
  • EDIT-MODE
  • EDIT-OPTION
  • EDIT-OPTION2
  • EDIT-OPTION3
  • EDIT-COLOR
  • EDIT-STATUS
  • EDIT-CURSOR
8 V10.1.0 V10.2.0 PG78440 以下の条件の場合、正しい実行結果が得られないことがあります。
  1. 翻訳オプションBINARY(BYTE)またはBINARY(WORD,MLBOFF)が指定されている。かつ、
  2. 以下の組み込み関数が存在する。かつ、
    [A]
    • FUNCTION MAX
    • FUNCTION MIN
    • FUNCTION MEAN
    • FUNCTION MEDIAN
    • FUNCTION RANGE
    [B]
    • FUNCTION ANNUITY
    • FUNCTION NUMVAL
    • FUNCTION NUMVAL-C
    • FUNCTION RANDOM
  3. 2.の関数の引き数が、全て9桁以下の固定小数点数字である。かつ、
  4. 2.の関数が[A]の場合、引き数が4つ以上指定されている。
9 V10.1.0 V10.2.0 PG78833 以下の条件の場合、翻訳時にCOBOLコンパイラが次のメッセージを出力して異常終了することがあります。
「プログラム名xxxxxxxx」 0: JMN0102I-U 翻訳処理が続行不可能となりました.他の 診断メッセージが表示されている場合は,それらを修正して,再度翻訳してみて下さい. (区名=JMNRAL, モジュール名=SABEMAC, 詳細コード=6202, 行情報=yy.)
  1. 翻訳オプションBINARY(BYTE)が有効である。かつ、
  2. 翻訳オプションCHECK(NUMERIC)またはCHECK(ALL)が有効である。かつ、
  3. 手続き部内に、添字付けおよび部分参照付けを使用した文がある。かつ、
  4. 3.の文の添字、部分参照の最左端文字位置、または部分参照の長さのいずれかに USAGE COMP-5の2進データ項目を指定している。かつ、
  5. 4.の2進データ項目の桁数が10桁~16桁である。
または、
  1. 翻訳オプションBINARY(BYTE)が有効である。かつ、
  2. 外部プログラムを呼び出すUSING BY VALUE指定のCALL文が存在する。かつ、
  3. 2.CALL文にUSING BY VALUE指定のデータ項目がCOMP-5の2進項目である。かつ、
  4. 3.の2進データ項目の桁数が10桁~16桁である。
10 V10.1.0 V10.2.0 PG79472 以下の条件の場合、翻訳時に以下のメッセージを出力して異常終了することがあります。
「プログラム名xxxxxxxx」 0: JMN0102I-U 翻訳処理が続行不可能となりました.他の 診断メッセージが表示されている場合は,それらを修正して,再度翻訳してみて下さい. (区名=JMNRAL, モジュール名=SABEMAC, 詳細コード=5460, 行情報=yy.)
  1. 二項演算の加減算がある。かつ、
  2. 1.の作用対象の一意名は符号付き内部10進または符号付き外部10進である。かつ、
  3. 1.の作用対象の一意名は桁数が同じである。かつ、
  4. 1.の結果の一意名は、1.の作用対象の一方と同じ一意名である。
[例]
 01 A PIC S9(4) COMP-3.
 01 B PIC S9(4) COMP-3.
 01 C PIC S9(4) DISPLAY.
 01 D PIC S9(4) DISPLAY.
      :
     COMPUTE A = A + B.
     SUBSTRUCT C FORM D.
11 V10.1.0 V10.2.0 PG79150 以下の条件の場合、翻訳時にメッセージを出力しないで異常終了することがあります。
  1. 翻訳オプションOPTIMIZEが有効である。かつ、
  2. 手続き部で、以下の一意名を使用している(注5)
    • 添字付けをしているデータ項目
    • 部分参照をしているデータ項目
    • 可変反復データ項目
    • 可変反復データ項目と同じ集団項目に含まれるデータ項目
(注5)翻訳時のメモリの状態に依存するため、条件に一致しても 異常終了しないことがあります。

注:V/Lは障害が存在する範囲を示します。