Severity codes for compiler diagnostic messages

Conditions that the compiler can detect fall into five levels or categories of severity.

Table 1. Severity codes for compiler diagnostic messages
Level or category of message Return code Purpose
Informational (I) 0 To inform you. No action is required, and the program runs correctly.
Warning (W) 4 To indicate a possible error. The program probably runs correctly as written.
Error (E) 8 To indicate a condition that is definitely an error. The compiler attempted to correct the error, but the results of program execution might not be what you expect. You should correct the error.
Severe (S) 12 To indicate a condition that is a serious error. The compiler was unable to correct the error. The program does not run correctly, and execution should not be attempted. Object code might not be created.
Unrecoverable (U) 16 To indicate an error condition of such magnitude that the compilation was terminated.

The final return code at the end of compilation is generally the highest return code that occurred for any message during the compilation.

You can suppress compiler diagnostic messages or change their severities, however, which can have an effect upon the final compilation return code. For details, see the related information.

Related references  
Processing of MSGEXIT