TNS/R Native Application Migration Guide

C and C++ Migration Tasks
TNS/R Native Application Migration Guide523745-001
3-18
Checking Changed Pragmas
Checking Changed Pragmas
For the following pragmas, the native C and C++ compilers produce results different
from those of the TNS compilers. Verify that programs do not rely on any of the
changed behaviors and make appropriate changes.
Table 3-3. Changed Pragmas
Changed Pragma Changed Behavior Action Required
[NO]INLINE Native C and C++ compilers do
not generate inline code for
standard C function calls.
Native C++ compiler generates
inline code for functions with an
INLINE specified.
Remove pragma.
OPTIMIZE Native compilers perform
different optimization than the
TNS compilers for the same
optimization level.
Remove pragma while migrating
program. After program has been
migrated, specify desired
optimization level.
SEARCH The nld utility is invoked
instead of the Binder. nld links
the entire object file (similar to a
Binder ADD * command) instead
of selectively linking only
portions of the object file (as in a
Binder SELECT SEARCH
command).
None, unless the way in which
you build your program requires
the select search behavior. See
the nld and noft Manual for
details.
SQL RELEASE1 is not supported as
an option. Native C does not
support NonStop SQL/MP RVUs
prior to Release 2.
Replace the RELEASE1 option
with RELEASE2 and migrate your
application to use Release 2 or
later of NonStop SQL/MP.
SSV Native compilers do not ignore
SSV pragmas following a
skipped SSV pragma number.
Change SSV pragma use if you
rely on the changed behavior.
[NO]WARN Native compilers generate
different warnings than the TNS
compilers for the same warning
number.
Remove pragma or replace with
native compiler warning number
that corresponds to TNS compiler
warning. See the C/C++
Programmer’s Guide for a list of
compiler messages.