|
VMS Help CXX, Qualifiers, /EXTERN_MODEL *Conan The Librarian |
/EXTERN_MODEL
/EXTERN_MODEL=option
/EXTERN_MODEL=RELAXED_REFDEF (D)
In conjunction with the /SHARE_GLOBALS qualifier, controls the
initial extern model of the compiler. Conceptually, the compiler
behaves as if the first line of the program being compiled was a
#pragma extern_model directive with the model and psect name, if
any, specified by the /EXTERN_MODEL qualifier and with the SHR or
NOSHR keyword specified by the /SHARE_GLOBALS qualifier.
For example, assume the command line contains the following
qualifier:
/EXTERN_MODEL=STRICT_REFDEF="MYDATA"/NOSHARE
The compiler acts as if the program began with the following
line:
#pragma extern_model strict_refdef "MYDATA" noshr
For more information on the various models, see "C++
Implementation" in the HP C++ User's Guide for OpenVMS Systems.
The /EXTERN_MODEL qualifier takes the following options, which
have the same meaning as for the #pragma extern_model directive:
COMMON_BLOCK
RELAXED_REFDEF
STRICT_REFDEF=["NAME"]
GLOBALVALUE
The default is RELAXED_REFDEF.
Use of an /EXTERN_MODEL value other than RELAXED_REFDEF should
be limited to compilations that either declare only POD (Plain
Old Data) objects, or that carefully use the extern_model (and/or
environment) #pragma directives to ensure that declarations of
non-POD objects appear only in source that is subject to the
default extern_model of relaxed_refdef.
|
|