C/C++ Programmer's Guide (G06.27+, H06.08+, J06.03+)

Usage Guidelines
This directive applies to TNS/R-targeted compilations only.
On Guardian environment, the OLIMIT pragma can appear only on the RUN command line
for NMC or NMCPLUS . On OSS environment, the -Wolimit=[value] option can appear
only on the RUN command line for the c89 utility.
When a routine has more basic blocks than value, the routine is not optimized and a warning
message is issued.
You must also specify one of these pragmas when using the OLIMIT directive:
On OSS environment: -Woptimize=2 or -O
On Guardian environment: OPTIMIZE 2
When OLIMIT is not set, an optimized routine can contain no more than 1500 basic blocks.
When a routine has more basic blocks than this number, it is not optimized, but a warning
message is not issued.
ONCE
The ONCE pragma specifies that the file containing this pragma will be compiled only once during
the compilation, even if it is included multiple times.
ONCE
There is no default setting for this pragma.
Usage Guidelines
This pragma applies to native compilations only.
The ONCE pragma can be specified only in the source code.
Use the ONCE pragma only in header files.
NOTE: Do not use the #pragma ONCE in a header file that contains the #pragma SECTION.
The expected behavior of this combination is undefined.
OPTFILE
The OPTFILE pragma specifies an optimizer file, which contains a list of functions that are to be
optimized at the level specified in the file. Functions that are not in this list are optimized at the
level given in the RUN command line or in the -Woptimize flag of the c89 utility or the -WO flag
of thec99 utility.
OPTFILE "file-name"
file-name
is the name of an EDIT file.
The pragma default settings are:
SYSTYPE OSSSYSTYPE GUARDIAN
N.A.N.A.TNS C compiler
N.A.N.A.G-series TNS c89 utility
Not setNot setTNS/R native C and C++ compilers
224 Compiler Pragmas