New PRAGMAs

Compiler enhancement (edit 777) adds these new pragmas:

++PRAGMA ASHELL_EXTENSIONS <boolean>

++PRAGMA PRE_PROCESS <boolean>

++PRAGMA EXTENDED_PRE_PROCESS <boolean>

Each of above enables/disables the switches /X:2, /P, and /PX respectively. The <boolean> argument is optional and defaults to "TRUE".

Note that each of the above must be placed before any other code, except for comments, ++pragmas, ++IFxxx conditionals, and the PROGRAM statement.

Also note that this change sets the default for all pragmas accepting a <boolean> argument to "TRUE". (Previously some of them required an explicit argument while others did not.) So for example, the following two are now equivalent:

++pragma ERROR_IF_NOT_MAPPED

++pragma ERROR_IF_NOT_MAPPED "TRUE"

Previously, the first one would have triggered an invalid argument error.