START-CPLUS-COMPILER |
MONJV= *NONE / <filename 1..54> ,CPU-LIMIT= *JOB-REST / <integer 1..32767> |
MONJV = *NONE / <filename 1..54>
The compiler run can be monitored by means of a BS2000 job variable.
<filename> assigns a monitoring job variable in which the compiler indicates runtime errors that may occur.
Two values are entered into a job variable by the operating system:
a status indicator with a length of 3 bytes, and
a return code with a length of 4 bytes.
The status indicator specifies whether the last statement was executed correctly. In case of a fatal error it is set to "$A ", in other cases it is set to "$T ".
The compiler issues messages with different weight. The return code specifies the most severe message weigth issued.
message weight | return code |
no error | 0000 |
[NOTE] | 1001 |
[WARNING] | 1002 |
[ERROR] | 2003 |
[FATAL] | 3005 |
The two parts are independent. Here are two examples with unusal results:
/START-CPLUS-COMPILER //COMPALE MUELL //END
This example writes "$A 0000" into the job variable. The syntax error in the SDF statement results in "$A ". Since the compiler did not issue any message, the return code is "0000".
/START-CPLUS-COMPILER //COMPILE FATAL.C //STEP //COMPILE GOOD.C //END
This example writes "$T 3005" into the job variable. The success in the second compilation results in "$T ". The fatal in the first compilation results in "3005".
CPU-LIMIT = *JOB-REST / <integer 1..32767>
This option can be used to define the maximum CPU time for the compiler run. The value entered here corresponds to the CPU-LIMIT operand of the START-EXECUTABLE-PROGRAM command.