| Range | Meaning |
|---|---|
| TRN0001 - TRN0018 | Syntax, /COPY / /INCLUDE resolution, conditional-compilation directives, cross-format conversion, control-option validation, source encoding. |
| TRN0201, TRN0203 | Two-digit-year date formats, under DATEYY. |
| TRN1001 - TRN1094 | Fixed-format spec and opcode problems; declaration keywords; array-operand arithmetic; DIM array subfields; malformed numeric columns; mismatched initial values; constructs with no JVM equivalent; invalid F-spec pairs and record-address-type letters. |
| TRN1528 - TRN1548 | CONST, DCL-ENUM, REQPREXP, assignment type compatibility, void-call-in-expression, undefined subfields, undefined LIKE targets, character operands in numeric contexts, MOVE/MOVEL Factor 2 operands, fixed-format DSPLY factor 1 operands, %EDITC operands, built-in functions as assignment targets. |
| TRN2001 - TRN2050 | Built-in functions, %ADDR, FOR-EACH, exported-procedure naming. |
| TRN2100 - TRN2159 | Names that do not resolve, names declared twice, and statement operands that do not fit the operation. |
| TRN2401-TRN2403 | %XML / %DATA option strings, and opcodes ILE RPG does not have. |
| TRN3001 - TRN3039 | Prototype/interface matching, OPTIONS(...), MOVE type combinations, %SIZE / %ADDR, CCSIDs, handlers, pre-runtime arrays, NOMAIN/lib mode. |
| TRN4001 - TRN4004 | Binding directories, external-description resolution (.dspf / SQL DDL), schema map. |
Four codes - TRN0002, TRN0003, TRN3003 and TRN3004 - can indicate a compiler bug rather than a problem in your source. See Internal compiler errors.