Easytrieve Diagnostic Options

Diagnostic options tighten the feedback loop between your source and the compiler's understanding of it. They include DEBUG FLDCHK for deeper field reference scrutiny, SORT message levels that expose why a presort failed, PARM SYNTAX for quick validation passes, and MSG-related controls routing severity to console or printer on some configurations. Embedded listing markers—dollar sign for critical errors, plus for warnings—point at tokens the syntax checker rejects. Beginners staring at return code 8 from compile JCL need a systematic read: scroll listing for first dollar marker, fix that line, recompile rather than fixing line 500 before line 40 error. Runtime diagnostics—FILE-STATUS, SORTMSG output, Error Analysis after abend—extend beyond this page's compile focus but share PARM DNA. This tutorial catalogs diagnostic PARM parameters, reading compile messages, SYNTAX versus full compile workflow, FLDCHK trade-offs, SORT(MSG) levels, compile summary interpretation, pairing with compiler warnings index, and escalation data for Broadcom support cases.

Progress0 of 0 lessons

DEBUG FLDCHK and NOFLDCHK

FLDCHK requests additional field checking during compilation—catching some invalid field references or inconsistent usage earlier than default checks. NOFLDCHK suppresses when site default enables FLDCHK but you need faster compile on unchanged legacy member. Trade-off: skipping FLDCHK on sloppy maintenance window may let latent errors reach runtime FILE-STATUS failures instead of compile time.

Listing Error Markers

Compile listing diagnostic markers
MarkerSeverityTypical action
$Critical errorFix before execute; object may be invalid
+WarningReview; may indicate future error or deprecated syntax
Message numberVaries by codeCross-check error messages index

Marker appears near column of suspected token—not always exact line if continuation involved. Read full message text; Broadcom message numbers map to documentation for explanation and recommended fix.

PARM SYNTAX Check

SYNTAX on compile PARM validates structure without full production of executable in typical workflows—ideal after large search-replace across Library. Saves CPU when thirty errors exist; first SYNTAX pass may surface all undefined field names before waiting for code generation. Follow with full compile once dollar markers cleared.

text
1
2
3
4
5
6
7
8
9
10
//COMPILE EXEC PGM=EZTPA00 //SYSIN DD * PARM SYNTAX FILE TESTFILE FB(80 800) BAD-FIELD 1 5 N JOB INPUT TESTFILE IF UNDEFINED-FIELD GT 0 DISPLAY 'test' END-IF STOP

SORT Diagnostic Messages

SORT(MSG(ALL)) on PARM increases sort-related message visibility during execution—valuable when SELECT presort or SORT activity fails on volume or key definition. Contrast with SORT silent production settings. Messages may appear on SYSPRINT referencing sort work datasets, key fields, or insufficient space—pair with JCL SORTWK allocation review.

MSG and Console Options

PARM MSG subparameters on some releases route critical or default messages to console or printer—primarily installation-dependent. Document site policy; developers on shared test LPAR may not have authority to change MSG routing. Critical messages during compile still embed in listing regardless of console routing.

Compile Summary Diagnostics

When LIST PARM active, summary totals errors and warnings separately. Zero errors with warnings may still allow execute but warrants cleanup—warnings sometimes flag migration reserved word collisions impending in next release. Non-zero errors mean do not schedule load module until resolved unless emergency override process exists—which mature shops avoid.

Diagnostic Workflow for Beginners

  1. Open listing at first $ marker—not last message in file.
  2. Read message number and text; lookup in compiler errors index if unclear.
  3. Fix Library before Activity when undefined field—root cause often missing DEFINE.
  4. Recompile; repeat until summary shows zero errors.
  5. Run small test JCL; switch to runtime diagnostics if logic fails with clean compile.

Compile Versus Runtime Diagnostics

Compile diagnostics: syntax, undefined symbols, invalid statement combinations, FLDCHK hits. Runtime diagnostics: FILE-STATUS on GET, invalid packed data S0C7, SORT failures, abend analysis. PARM DEBUG STATE and FLOW help runtime; FLDCHK helps compile. DISPLAY bridges to programmer-driven runtime inspection.

Common Diagnostic Mistakes

  • Executing load module while listing shows compile errors.
  • Ignoring + warnings that predict 11.6 reserved word failures.
  • Fixing symptoms on line 200 before undefined field on line 15.
  • Disabling FLDCHK globally to speed compile—latent field bugs.
  • Uploading partial listing to support without summary page.
  • Confusing SYNTAX check success with full compile success.

Explain It Like I'm Five

Diagnostic options are spell-check and grammar-check for your Easytrieve homework. FLDCHK is extra strict checking. Dollar marks mean wrong answer must fix; plus marks mean suspicious sentence might be okay. SYNTAX is quick check without printing whole final essay. Read fixes from top of teacher's marks, not bottom.

Exercises

  1. Introduce undefined field; compile and locate $ marker message.
  2. Run PARM SYNTAX on broken program; compare to full compile time.
  3. Document meaning of first warning + in a sample listing.
  4. Add SORT(MSG(ALL)) and describe when sort messages appear.
  5. Write escalation checklist for Broadcom case with listing attachments.

Quiz

Test Your Knowledge

1. DEBUG FLDCHK enables:

  • Additional field reference checking during compile
  • Automatic SORT of all files
  • CICS map generation
  • JCL validation

2. In compile listing a $ marker typically indicates:

  • Critical error near marked token
  • Successful compile
  • Macro name
  • Page number

3. PARM SYNTAX mode:

  • Checks source without full code generation in many workflows
  • Executes report only
  • Binds Db2
  • Allocates VSAM

4. SORT(MSG(ALL)) on PARM:

  • Surfaces sort-related messages during execution diagnostics
  • Disables SORT
  • Sets SORTKEY only
  • Deletes work files

5. Compile summary error counts help you:

  • Know whether object was produced or fix is incomplete
  • Set BUFNO
  • Format TITLE lines
  • Define GDG
Published
Read time15 min
AuthorMainframeMaster
Reviewed by MainframeMaster teamVerified: Broadcom Easytrieve 11.6 PARM DEBUG FLDCHK, compile listing markers, SYNTAXSources: Broadcom PARM Statement, Compiler Listings, Knowledge Article 55089Applies to: Easytrieve compile and sort diagnostic options