<snip>
There ought to be a warning on any such truncation
although it probably couldn't be detected until the
point of LOAD/LINK/ATTCH.
</snip>

There is information provided about such truncation. It is done at bind 
time according to the RMODE.

For example,

IEW2635I 4B34 THREE BYTE ADCON IN SECTION TEST AT OFFSET 00000000 IN CLASS 
B_TEXT WITH RMODE=ANY CANNOT BE RELOCATED. 
or 
IEW2635I 5395 THREE BYTE ADCON IN SECTION TEST AT OFFSET 00000000 IN CLASS 
B_TEXT WITH RMODE=64 CANNOT BE RELOCATED. 

I'm unhappy that they're informational rather than at least warning; 
perhaps there's a way to ask that these be warnings (or higher).

When RMODE 64, with RMODEX=64TRUE (which any RMODE 64 really does need), 
then you do get an error IEW2572E for these cases.

If you are doing a link/load/xctl/attach with ADDR= and provide storage 
above 16M, you are expected to have avoided doing this for a module that 
is RMODE 24 that would have a problem (such as 3-byte adcon) if placed 
above 16M. The fetch process will happily trust you and truncate. 
Similarly, if you are doing a link/load/xctl/attach with ADDR64= and 
provide storage above 2G,  you are expected to have avoided doing this for 
a module that is RMODE 24 or RMODE 31 that would have a problem (such as a 
3-byte or 4-byte adcon) if placed above 2G.

Peter Relson
z/OS Core Technology Design

Reply via email to