In your compilation output, each compiler message, with the exception of the code generation messages in the range 5000-5999, starts with IBMnnnnI X where:
In some catastrophic situations, such as not being able to open SYSPRINT, the compiler might not follow the last two of the preceding rules.
In this guide, messages are listed numerically. Each compiler message in this section has the form IBMnnnnI X where X is the severity code.
Severity codes can be any of the following: I, W, E, S, or U.
These severity codes indicate the following. (Note that the return codes listed are the highest return code generated.)
Compiler messages are printed in groups according to these severity levels and to the component that produced them.
The code generation messages (those in the range 5000-5999) start with IBMnnnn where:
Under batch, the code generation messages are written to the STDOUT DD dataset, while all other messages appear in the listing which is written to the SYSPRINT DD dataset. Under z/OS UNIX, the code generation messages are written to stdout, while all other messages appear in the listing and are also written to stdout.
The compiler FLAG option suppresses the listing of messages in the compiler listing. You can find a description of the FLAG option in Enterprise PL/I for z/OS Programming Guide.