Similar to C, all STATIC variables are placed in the WSA, to make the module
"artificially" reentrant, even if the module changes its static variables.
At our site, this idea was esspecially ill-fated, because we told our developers
for some 20 years to make all the modules "naturally" reentrant, so why should
we compile with the RENT option? But it took us - a colleague of mine and myself
- 3 years (from 2003 to 2006) to convince the compiler group that the compiler
option RENT does no good.
But in other - larger - branches of the same company, the RENT compile option is
> On Jun 5, 2010, at 06:51, Bernd Oppolzer wrote:
>> The WSA is also present in PL/1 modules compiled with the RENT option
>> (although not recommended nowadays, it was the only option in the first days
>> of the VA PL/1 compilers, even on z/OS, or maybe still OS/390).
>> Some sites do all compiles with RENT, because they mix up the compile
>> option RENT with the linkage editor option RENT, IMHO. I tried to
>> explain the difference, but no success :-(
> What does the compiler option RENT do? I'm familiar (slightly)
> only with C compilers, where RENT causes static variables to be
> accessed via the PRV; NORENT compiles them inline. Compiling
> a module NORENT and linking it RENT (well, REFR, perhaps) could
> lead to a prompt S0C4 at execution.
> -- G.