Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, Migration Guide

NORENT and WRITABLE

With V3R2 of Enterprise PL/I, NORENT became the default (previously RENT was the default). This default will ease your migration because now, by default, the new compiler, just like the old compilers, will not generate any extra code to make your static variables writeable and still REENTRANT (which is what the RENT option does).

Also note that using the RENT option requires the prelinker to be used or your modules to be stored in PDSEs.

The new WRITABLE option is also the default since it gives you the best performance in combination with NORENT.

But if you are using the NORENT option, then you must also use the NOWRITABLE option if both of the following are true:

  1. your code must be REENTRANT
  2. your code uses CONTROLLED variables or FILEs

With Enterprise V3R4, the NOWRITABLE option has two suboptions which can also make your code more (or less) compatible:

FWS
The NOWRITABLE(FWS) option will make your code compatible with the code generated by earlier releases of Enterprise PL/I under the NOWRITABLE option, but it does not allow CONTROLLED variables to be shared between code generated by Enterprise PL/I and code generated by the PL/I for MVS & VM and earlier compilers.
PRV
The NOWRITABLE(PRV) option will allow code compiled by Enterprise PL/I to share CONTROLLED variables with code compiled by the old PL/I compilers. However, it will also impose the same limits as imposed by those compilers on using CONTROLLED with FETCH.

Terms of use | Feedback

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