INSOURCE
The INSOURCE option specifies that the compiler should include a listing of the source program before the PL/I macro, CICS®, or SQL preprocessors translate it.
ABBREVIATION: IS, NIS
- FULL
- The INSOURCE listing will ignore %NOPRINT statements and will
contain all the source before the preprocessor translates it.
FULL is the default.
- SHORT
- The INSOURCE listing will heed %PRINT and %NOPRINT statements.
- ALL
- The INSOURCE listing includes the source listings that are generated by each of the preprocessors and by the compiler itself. ALL is the default.
- FIRST
- The INSOURCE listing includes only the source listing that is generated by the first preprocessor.
Under the INSOURCE option, text is included in the listing not according to the logic of the program, but as each file is read. For example, consider the following simple program, which has a %INCLUDE statement between the PROC and END statements.
insource: proc options(main);
%include member;
end;
The INSOURCE listing will contain all of the main program before
any of the included text from the file member (and
it will contain all of that file before any text included by it -
and so on).
Under the INSOURCE(SHORT) option, text included by a %INCLUDE statement inherits the print/noprint status that was in effect when the %INCLUDE statement was executed, but that print/noprint status is restored at the end of the included text (however, in the SOURCE listing, the print/noprint status is not restored at the end of the included text).
