Easytrieve Compiler Warnings Index

Compiler warnings are the yellow flags of Easytrieve translation—compile finishes, the binder may run, operations schedule the job, and six months later a subscripted redefine blows S0C7 on one bad record. Warnings carry plus markers in listings, EZTC prefix with W severity, and messages about deprecated syntax, questionable redefines, files opened by inheritance, and fields that compile but violate 11.6 semantics. WARNCC returns condition code 4 on warning-only compiles at many sites—CI tools should not treat RC 4 as success without review. This index catalogs warning families from migration release notes, explains when to escalate warnings to errors, relates warnings to runtime risk, and outlines governance for promote-to-production gates. Read compiler errors index for hard failures; read this page for soft failures that still ship.

Progress0 of 0 lessons

Warnings Versus Errors

Severity comparison
AspectError (E)Warning (W)
Compile continuesUsually no load moduleOften yes
Listing marker$+
Typical RC8 or higher4 with WARNCC default
RiskImmediate fix requiredMay be latent runtime defect

WARNCC and Shop Policy

Broadcom documents WARNCC in compiler options: compilation with warnings only may return condition code 4. You cannot override WARNCC from PARM on some releases—site table governs. Mature shops add compile scanners that fail if any + appears, or whitelist known benign codes during migration. Document accepted warnings in program header until remediated.

Migration Warning Families (11.6)

Differences Between Releases highlights warnings that replaced old errors or new checks that expose legacy assumptions.

Notable 11.x warning themes
Example codeTopicRuntime risk
EZTC0393WDEFINE type differs from originalSubscript or redefine confusion
EZTC0715WSubscripting not allowed on redefine lengthData exception on DISPLAY
EZTC0654WFile may not be open in activityWrong data if inheritance unintended
STRICTQU WUnqualified field assumed fileSilent wrong file qualification
text
1
2
3
DEFINE FLDP S 4 P OCCURS 3 DEFINE FLDP-R FLDP 5 P + EZTC0715W >>> subscripting not allowed - length greater than redefined field

Deprecation and Compatibility Warnings

Warnings announce syntax scheduled for removal, function mode differences, and features that behave differently than 6.4. Deprecated constants page lists figurative misuse patterns that may warn before they error in a future release. Treat deprecation warnings as mandatory backlog items for migration programs.

Precision and Data Truncation Warnings

MOVE or arithmetic that truncates significant digits may warn depending on options. Report masks and packed field sizes need alignment—truncation warnings predict wrong totals that balance to the penny on small samples but fail audit on millions of rows. Fix masks and field sizes; do not suppress warnings without analysis.

Unreachable and Dead Code Warnings

Code after STOP, EXIT, or unconditional GOTO may warn as unreachable. Often indicates logic error—two STOP statements, duplicated FINISH paths, or copy-paste mistake. Removing dead code improves maintenance; sometimes warns on intentionally disabled branches—comment why if you keep them.

When to Fail the Build on Warnings

  1. Any warning in financial or regulatory programs without signed waiver.
  2. Migration warnings on programs touching 11.6 function mode.
  3. OCCURS/redefine warnings on subscripted production tables.
  4. Qualification warnings when STRICTQU is not yet E site-wide.
  5. New warnings introduced by a code change—regression gate.

Reducing Warning Noise

Fix root cause rather than disabling diagnostics globally. Qualify fields explicitly to silence STRICTQU W. Split activities so file I/O matches field references. Correct redefine layouts instead of ignoring EZTC0715W. For macro-generated warnings, fix the macro template once. LIST NOMACROS may hide context—use MACROS while fixing.

Triage Workflow

  1. Compile with listing; collect all + lines.
  2. Sort by code; group by program area DEFINE versus JOB.
  3. Research each code in Broadcom Messages manual.
  4. Rate severity: cosmetic, migration, latent defect.
  5. Fix or document waiver with expiry date.
  6. Recompile until + gone or waivers approved.
  7. Add warning scan to CI identical to production options.

Common Warning Mistakes

  • Treating RC 4 promote as success without reading listing.
  • Suppressing listings to hide + markers.
  • Ignoring redefine warnings until S0C7 in production.
  • Assuming 6.4 clean means 11.6 clean.
  • Fixing warnings by removing code without understanding message.

Explain It Like I'm Five

Warnings are the teacher saying this homework might be wrong, but you can still turn it in. The + mark is a yellow sticker—not red like $. Smart students fix yellow stickers before the test because the same mistake might break the robot during the real run. Grown-up teams make rules: no yellow stickers allowed on important papers.

Exercises

  1. Explain WARNCC and RC 4 in one paragraph.
  2. List three 11.6 warnings and their runtime risks.
  3. Draft a shop policy: when warnings block promote.
  4. Compare STRICTQU W versus E outcomes.
  5. Write a redefine example that triggers EZTC0715W pattern.

Quiz

Test Your Knowledge

1. Compiler warnings differ from errors because:

  • Compile may complete but signal risky or deprecated code
  • Warnings always abend at runtime
  • Warnings appear only in JCL
  • Warnings disable all PRINT

2. WARNCC option controls:

  • Condition code returned when only warnings occur
  • SORT work space
  • Tape density
  • Screen colors

3. EZTC0715W subscripting not allowed often warns:

  • Redefine longer than parent may break subscript rules
  • Missing JOB
  • Invalid JCL
  • TITLE too long

4. Listing marker + typically means:

  • Warning severity
  • Critical error
  • Macro end
  • Successful compile only

5. Should CI pipelines ignore warnings?

  • No—many shops fail builds on warnings or treat selected codes as errors
  • Yes always
  • Only for reports
  • Only on Fridays
Published
Read time13 min
AuthorMainframeMaster
Reviewed by MainframeMaster teamVerified: Broadcom Easytrieve 11.6 WARNCC, migration warnings, compile listingsSources: Broadcom Easytrieve 11.6 Compiler Options, Differences Between Releases, Controlling CompilationApplies to: Easytrieve compiler warning messages