Compiler options that affect the SYSADATA file
Several compiler options could affect the contents of the SYSADATA file.
COMPILE
NOCOMPILE(W|E|S)
might stop compilation prematurely, resulting in the loss of specific messages.EXIT
INEXIT
prohibits identification of the compilation source file.LANGUAGE
LANGUAGE
controls the message text (Uppercase English, Mixed-Case English, or Japanese). Selection of Japanese could result in DBCS characters written to Error Identification records.NUM
NUM
causes the compiler to use the contents of columns 1-6 in the source records for line numbering, rather than using generated sequence numbers. Any invalid (nonnumeric) or out-of-sequence numbers are replaced with a number one higher than that of the previous record.TEST
TEST
causes additional object text records to be created that also affect the contents of the SYSADATA file.
The SYSADATA fields shown in the following table
contain line numbers whose contents differ depending on the NUM|NONUM
setting.
Type | Field | Record |
---|---|---|
0020 | AE_LINE | External Symbol record |
0030 | ATOK_LINE | Token record |
0032 | AF_STMT | Source Error record |
0038 | AS_STMT | Source record |
0039 | AS_REP_EXP_SLIN | COPY REPLACING record |
0039 | AS_REP_EXP_ELIN | COPY REPLACING record |
0042 | ASY_STMT | Symbol record |
0044 | AX_DEFN | Symbol Cross Reference record |
0044 | AX_STMT | Symbol Cross Reference record |
0046 | AN_STMT | Nested Program record |
The Type 0038 Source record contains two fields that relate to line numbers and record numbers:
- AS_STMT contains the compiler line number in both the
NUM
andNONUM
cases. - AS_CUR_REC# contains the physical source record number.
These two fields can always be used to correlate the compiler line numbers, used in all the above fields, with physical source record numbers.
The remaining compiler options have no direct effect on the SYSADATA
file, but might trigger generation of additional error messages associated
with the specific option, such as FLAGSTD
or SSRANGE
.