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

NORENT および WRITABLE

Enterprise PL/I の V3R2 以降、NORENT がデフォルト になっています (以前は RENT がデフォルトでした)。 これにより、新しいコンパイラーは、旧版のコンパイラーと同様に、 静的変数を書き込み可能にし、なおかつ REENTRANT にする ための追加のコードを生成する (これが RENT オプションの動作です) ことを デフォルトでは行わなくなるため、マイグレーションが容易になります。

また、RENT オプションを使用する場合は、 プリリンカーを使用するか、モジュールを PDSE に 格納する必要があることに注意してください。

新しい WRITABLE オプションも、NORENT と組み合わせることで 最高のパフォーマンスを提供するため、デフォルトになりました。

ただし、NORENT オプションを使用している場合、 次の両方の項目が真であれば、NOWRITABLE オプションも 指定する必要があります。

  1. コードは REENTRANT である必要がある。
  2. コードは CONTROLLED 変数または FILE を使用している。

Enterprise V3R4 では、NOWRITABLE オプションに以下の 2 つのサブオプションがあり、 それによって、コードの互換性が高くなる (低くなる) 可能性もあります。

FWS
NOWRITABLE(FWS) オプションを使用すれば、ご使用のコードを、NOWRITABLE オプションを使用して Enterprise PL/I の以前のリリースで生成されたコードと互換性を持たせることができます が、Enterprise PL/I で生成されたコードと、PL/I for MVS & VM およびそれ以前のコンパイラー で生成されたコードの間で CONTROLLED 変数を共用させることは許されません。
PRV
NOWRITABLE(PRV) オプションを使用すれば、Enterprise PL/I でコンパイルされたコードと旧 PL/I コンパイラーでコンパイルされたコードで CONTROLLED 変数を共用することが許されます。 ただし、FETCH で CONTROLLED を使用している場合にこれらのコンパイラーによって課せられるのと同じ 制限も課せられることになります。

Terms of use | Feedback

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