The /inline_and_copy
command qualifier functions like
the /inline
qualifier, except that if all CALLs or
references to a subprogram are inlined, the text of the routine
is not optimized, but is copied unchanged to the transformed code
file. This is intended for use when inlining routines from the same
file as the call, and has no special effect when the routines being
inlined are being taken from a library or another source file.
When a subprogram has been inlined everywhere it is used, leaving it unoptimized saves compilation time. When a program involves multiple source files, the unoptimized routine will still be available in case one of the other source files contains a reference to it, so no errors will result.
/inline_and_
copy
algorithm assumes that all CALLs and references to the
routine precede it in the source file. If the routine is referenced
after the text of the routine, and that particular call site cannot
be inlined, the unoptimized version of the routine will be invoked.