Assembly / HLASM · Abend code

Abend S806

What does Abend S806 mean in Assembly / HLASM?

Raised by the supervisor, or by the BLDL SVC it calls, while processing a LINK(X), XCTL(X), ATTACH(X), or LOAD macro that used the EP or EPLOC operand. The register 15 reason code identifies which of several distinct problems occurred — the module isn't in the searched library, private, job, or link list (04, the case behind the familiar 'program not found'); an uncorrectable I/O error while BLDL searched the library's directory, often because the library is an uninitialized PDS (08); the library DCB the search needs isn't open (0C); an explicit LOAD was issued without the required DCB parameter (10); the module isn't yet in the link pack area for an SVC-issued XCTL (14); the LPA directory hasn't been built yet (18); the DCB on the macro itself is invalid (1C); or an internal error (2C).

Abend S806z/OS · HLASM

Condition

Raised by the supervisor, or by the BLDL SVC it calls, while processing a LINK(X), XCTL(X), ATTACH(X), or LOAD macro that used the EP or EPLOC operand. The register 15 reason code identifies which of several distinct problems occurred — the module isn't in the searched library, private, job, or link list (04, the case behind the familiar 'program not found'); an uncorrectable I/O error while BLDL searched the library's directory, often because the library is an uninitialized PDS (08); the library DCB the search needs isn't open (0C); an explicit LOAD was issued without the required DCB parameter (10); the module isn't yet in the link pack area for an SVC-issued XCTL (14); the LPA directory hasn't been built yet (18); the DCB on the macro itself is invalid (1C); or an internal error (2C).

Fix

Check the register 15 reason code (and the matching CSVnnnI message: 04→CSV003I, 08→CSV004I, 0C→CSV005I, 10→CSV007I, 14→CSV008I, 18→CSV006I, 1C→CSV021I) before assuming a plain not-found. For 04, confirm the module was actually assembled and link-edited into a library in the job's STEPLIB/JOBLIB concatenation, check for a typo or case mismatch in the name, and for an alias confirm its authorization, RMODE, and entry-point displacement match the module already loaded under another name. For 0C or 1C, check that the DCB used to search the library is valid and actually open. For 08, check whether the target library is an uninitialized or corrupted PDS. For 10, add the missing DCB parameter to the explicit LOAD. Treat 14, 18, or 2C as issues to report to the system programmer rather than local coding errors.

Related abend code