LSACHECK
Use the LSACHECK option (LSACHECK is short for Linkage Section Addressability Check) to prevent inadvertent use of LINKAGE-SECTION data items prior to establishing addressability.
The LSACHECK compiler option tells the compiler to generate code to initialize BLL cells
(addresses for LINKAGE-SECTION data items) to x'7FFF000'
instead of the previous
default of x'00000000'
. With NOLSACHECK the BLL cells will still be initialized to
x'00000000'
.
- Default
- LSACHECK=NO
- YES
- Tells the compiler to generate code to initialize BLL cells (addresses for LINKAGE-SECTION data
items) to
x'7FFF000'
. - NO
- Tells the compiler to generate code to initialize BLL cells (addresses for LINKAGE-SECTION data
items) to
x'00000000'
.
Note: Using LSACHECK=*YES will set LSACHECK on for all compiles, and it will not be possible to
override this compiler option.
AMODE 64 implications
For programs compiled with LSACHECK and LP(64), the compiler generates code to initialize the
BLLs to x'000000007FFFF000'
to get similar behavior to LP(32) programs with BLLS
set to x'7FFFF000'
.
Note: Since there is already a way to get a report of uses of zero addresses without an ABEND or
stoppage of the application (the z/OS "Zero Address Detection" feature), there is no need to
duplicate that feature with an MSG suboption like some other compiler options have.