Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, コンパイラーおよびランタイム 移行ガイド

スケール因数と FIXED BIN を持つ算術組み込み関数

RULES(IBM) コンパイル時オプション (デフォルト) を指定した場合、 ゼロ以外のスケール因数を持つ FIXED BIN として変数を宣言できます。 スケールされた FIXED BIN による 2 項演算、プレフィックス演算、および比較演 算は、従来のコンパイラーと同じセマンティクスを使用して実行されます。

ただし、ADD、DIVIDE、または MULTIPLY 組み込み関数は、ゼロ以外のスケ ール因数を持つ FIXED BIN の結果は生成しません。

これらの組み込み関数は、次のどちらかの条件が満たされる場合、 従来のコンパイラーでは FIXED BIN として評価されていましたが、 新しいコンパイラーでは FIXED DEC として評価されます。

例えば、新しいコンパイラーは、次の代入ステートメントの DIVIDE 組み 込み関数を FIXED DEC 式として評価します。

       dcl (i,j) fixed bin(15);
       dcl x     fixed bin(15,2);

       ...

       x = divide(i,j,15,2);

このメッセージが表示されるほとんどの場合、変更は必要ありません。通常は、プログラマーが考えたとおりのことが起きただけです。 例えば、前述のコードは実際には、その除算の結果に属性 FIXED DEC(15,2) ではなく、属性 FIXED BIN(15,2) を持たせるだけの、ありそうもないプログラムとなります。

コンパイラーは、メッセージ IBM1053 を出して、この相違点にフラグを立てます。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)