コンパイル
- OPM RPG で CVTOPT(*NONE) を指定すると、RPG がサポートしないタイプまたは属性を持つ、
外部記述されたすべてのフィールドは無視されます。ILE RPG で CVTOPT(*NONE) を指定すると、外部記述のすべてのフィールドは、
外部記述で指定されたのと同じタイプでプログラムに取り込まれ
ます。
- RPG IV では、制御仕様書の DATEDIT と DECEDIT との間に従属関係はあり
ません。
- ILE RPG の作成コマンド (CRTBNDRPG および CRTRPGMOD) に関しては次
のとおりです。
- CRTRPGPGM コマンドの IGNDECERR パラメーターは、ILE RPG の
作成コマンドでは FIXNBR パラメーターに置き換えられました。 IGNDECDTA は、10 進
データ・エラーを無視して、次の機械命令から続行します。場合によっては、このため
に、フィールドが、誤った値や予期せぬ値で更新されることがあります。FIXNBR は、デ
ータが使用される前に予測可能な方法でそのデータを訂正します。
- 数値オーバーフローを許容するかどうかを制御する新しいパラメーター
TRUNCNBR があります。
- RPG IV には、報告書簡易作成機能あるいはコマンドはありません。
- コンパイラーに MI リストを要求することはできません。
- コンパイラー・リストでは、デフォルトの OPTION(*NOSRCSTMT) が指定
されていると、行番号は 1 で始まり、ソースまたは生成仕様書の 1 行ごとに 1 ずつ増え
ます。OPTION(*SRCSTMT) が指定されていると、行番号の代わりに順序番号が示されます
。ソース ID は数値です。すなわち、/COPY メンバーまたは拡張 DDS に AA000100
を超える行番号はありません。
- RPG IV では、/TITLE などのコンパイラー指示ステートメントはすべて
コンパイル時データより前に なければなりません。RPG IV は、/TITLE 指示ステートメントを見つけると、これをデータと見なします。(RPG III は、/TITLE 指定がソースのどこにあっても、これをコンパイラー指示
ステートメントと見なします。)
変換援助プログラムは、コンパイル時データの中で /TITLE 指定を見つけると、これを除去します。
- ILE RPG は、データ構造におけるフィールドの重なりを検出することに
より厳格です。オーバーラップ・オペランドがかかわるいくつかの計算命令では、ILE RPG
がメッセージを出し、OPM コンパイラーは出しません。
- ILE RPG において NOT という語は変数名として使用することができません。 NOT は式の中の演算子として使用される特殊語です。
- コンパイル時に、ソースはメイン・ソース・ファイルの CCSID を使用して
読み取られますが、OPM RPG の場合には、ソースはジョブの CCSID を使用して
読み取られます。
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.