In general, with option *RMVCOMMENT, only the directives neccessary for successful compilation are output to the generated source file. With option NORMVCOMMENT, the directives not necessary for successful compilation of the generated source file are converted into comments.
The following table summarizes how each directive is handled by the preprocessor for the various PPGENOPT parameter values:
| Directive | *RMVCOMMENT | *NORMVCOMMENT | ||
| *EXPINCLUDE | *NOEXPINCLUDE | *EXPINCLUDE | *NOEXPINCLUDE | |
| /COPY | remove | remove | comment | comment |
| /DEFINE | remove | keep | comment | keep |
| /EJECT | remove | remove | keep | keep |
| /ELSE | remove | remove | comment | comment |
| /ELSEIF | remove | remove | comment | comment |
| /END-EXEC | keep | keep | keep | keep |
| /END-FREE | keep | keep | keep | keep |
| /ENDIF | remove | remove | comment | comment |
| /EOF | remove | remove | comment | comment |
| /EXEC | keep | keep | keep | keep |
| /FREE | keep | keep | keep | keep |
| /IF | remove | remove | comment | comment |
| /INCLUDE | remove | keep | comment | keep |
/RESTORE ![]() |
keep ![]() |
keep ![]() |
keep ![]() |
keep ![]() |
/SET ![]() |
keep ![]() |
keep ![]() |
keep ![]() |
keep ![]() |
| /SPACE | remove | remove | keep | keep |
| /TITLE | remove | remove | keep | keep |
| /UNDEFINE | remove | keep | comment | keep |