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.
|