Error messages are how Easytrieve tells you what went wrong—during compile when IF has no END-IF, during SORT when a key field length mismatches FILE layout, during PRINT when a report field is undefined, or at runtime when FILE-STATUS shows a failed READ. Beginners stare at the last line of a thousand-line SYSPRINT when the first error at statement forty-two caused twenty follow-on ghosts. Veterans classify the failure: compile versus runtime, syntax versus data versus environment, then open the right artifact—compiler listing, macro expansion, job log, CEEDUMP, or DISPLAY trace. This index is section twenty-four hub: how Broadcom structures message codes, where each phase writes output, triage workflow from first error to fix, links to compiler runtime and warnings sub-indexes, and per-message deep dives planned in EASYTRIEVE_PAGES with meaning cause example fix and related errors. Pair this catalog with debugging overview when you need technique, not just message text.
| Family | When | Site index |
|---|---|---|
| Compiler errors | Source translation fails | /errors/compiler |
| Runtime errors | Execution fails or FILE-STATUS errors | /errors/runtime |
| Compiler warnings | Compile succeeds with cautions | /errors/warnings |
Paths above are relative to /tutorials/easytrieve. Each sub-index will link to per-code pages as the catalog expands—mirroring Broadcom Messages and Codes manuals for Report Generator and Plus.
Compiler listings pair statement numbers with message codes and English text. A typical pattern shows EZTnnnn or product-specific prefix, severity E for error W for warning, source line reference, and token involved. Statement number maps to expanded source when macros participate—always check whether error line refers to macro output not visible in original member. Multiple errors on one line often share one missing period or END-IF root cause. Fix top-down: first error in listing order, recompile, repeat until clean.
123456EZT0402 E STATEMENT NUMBER 000142 IF GROSS GT LIMIT ... (missing END-IF) EZT0511 E FIELD NET-PAY NOT DEFINED
Runtime diagnostics appear when the load module executes. FILE-STATUS or product equivalent on READ WRITE GET PUT signals dataset problems—wrong LRECL, missing DD, empty file when not expected. Arithmetic exceptions divide by zero or overflow when nullable SQL fields skip guards. Abend codes S0C7 S0C4 and similar map to dump analysis tutorials. RETURN-CODE non-zero from FINISH logic is intentional application error not compiler failure—read program DISPLAY messages before assuming system defect. CICS-backed online runs add transaction dump and message queues.
| Theme | Example situation | Typical fix |
|---|---|---|
| Undefined field | NET-PAY in JOB without DEFINE | Add DEFINE or qualify FILE: field |
| Reserved word conflict | DEFINE SET 1 A | Rename to WS-SET-IND per migration |
| Unclosed block | IF without END-IF | Add matching terminator |
| FILE layout mismatch | FIELD past record length | Adjust OFFSET LENGTH or LRECL |
| Invalid statement context | GOTO SCREEN in BEFORE-SCREEN | Move to AFTER-SCREEN |
| Macro expansion defect | Generated DEFINE duplicate | Fix macro library; recompile with listing |
Wrong record length after copybook change without recompile produces garbage fields not immediate abend—suspect data before runtime message appears. SORT key not in file layout fails at sort invocation with sort utility message wrapped in Easytrieve step. REPORT undefined field may default or space-fill depending on options—compare listing cross-reference. STOP and FILE EOF confusion ends job early with operator thinking error when logic intended cap. Document expected FILE-STATUS values in FINISH DISPLAY for operations.
Warnings flag deprecated syntax, unreachable statements, precision truncation, and compatibility notices. Compile may produce load module despite warnings—CI pipelines should not ignore them. Compiler options diagnostics and listings pages cover WARNASERR and expanding warning detail. Warnings index on this site will catalog each message parallel to errors.
| Artifact | Content | Typical DD |
|---|---|---|
| Compiler listing | Errors warnings expanded source | SYSPRINT compile step |
| Execution log | DISPLAY runtime FILE messages | SYSPRINT run step |
| Job log | JES messages RC abend codes | SDSF or SYSOUT |
| Dump | Register storage trace | CEEDUMP or SYSUDUMP |
EASYTRIEVE_PAGES section twenty-four specifies per error pages with meaning, cause, example, fix, and related errors. Populate from Broadcom Messages and Codes PDF starting with highest frequency shop messages—undefined field, reserved word, FILE not found, invalid SORT key. Cross-link related errors when one fix resolves multiple codes. Include JCL snippet when DD mistake causes runtime FILE error.
Error text explains what failed; debugging tutorials explain how to investigate. Compiler listings page teaches reading expansion and cross-reference. Tracing and DISPLAY debugging expose runtime values. Dump analysis interprets abend dumps. Test data page reduces reproduction cost. Use error index to decode message; use debugging section to instrument program.
Error messages are the computer raising its hand to say something broke. Compile errors happen while the computer reads your recipe before cooking—it refuses to start if steps are missing. Runtime errors happen while cooking—the oven is off or an ingredient jar is empty. Warnings are the computer saying this might burn later but I will try anyway. Read the first hand raised, fix that problem, and ask again instead of only reading the last shout at the end.
1. Compile errors are reported primarily in:
2. Runtime errors occur when:
3. First error in a compile listing should be fixed first because:
4. Reserved word field name conflicts produce:
5. Compiler warnings differ from errors because: