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'.

Syntax

Read syntax diagramSkip visual syntax diagramLSACHECK=*YESNO
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.