Copyright Digital Equipment Corp. All rights reserved.

/PDSC_MASK

    /PDSC_MASK=option

 Forces the compiler to set the PDSC$V_EXCEPTION_MODE field of the
 procedure descriptor for each function in the compilation unit to
 the specified value, regardless of the setting of any other
 qualifiers.

 Ordinarily the PDSC$V_EXCEPTION_MODE field gets set automatically
 by the compiler, depending on which /IEEE mode is specified on the
 command line.  The /PDSC_MASK qualifier overrides the /IEEE_MODE
 qualifer setting of this field.

NOTE:

     The /PDSC_MASK qualifier is a low-level systems-programming
     feature that is seldom necessary.  Its usage can produce object
     modules that do not conform to the OpenVMS common language
     environment and, within C, it can produce non-standard and
     seemingly incorrect floating-point behaviors at runtime.

 The qualifier option keywords are exactly the allowed values
 defined in the OpenVMS Calling Standard for this field, stripped of
 the PDSC$V_EXCEPTION_MODE prefix (for example, /PDSC_MASK=SIGNAL
 sets the field to PDSC$V_EXCEPTION_MODE_SIGNAL).

 The qualifier options are:

 SIGNAL                Maps to PDSC$K_EXCEPTION_MODE_SIGNAL.  Raise
                       exceptions for all except underflow (which
                       equals 0).

 SIGNAL_ALL            Maps to PDSC$K_EXCEPTION_MODE_SIGNAL_ALL.
                       Raise exceptions for all.

 SILENT                Maps to PDSC$K_EXCEPTION_MODE_SILENT.  Raise
                       no exceptions.  Create only finite values:
                       no infinities, no denorms, no NaNs.  The
                       function result or errno needs to be
                       examined.)

 FULL_IEEE             Maps to PDSC$K_EXCEPTION_MODE_FULL_IEEE.
                       Raise no exceptions except as controlled by
                       separate IEEE exception-enabling bits.
                       Create exceptional values according to the
                       IEEE standard.

 CALLER                Maps to PDSC$K_EXCEPTION_MODE_CALLER.
                       Emulate the same mode as the caller.

 In the absence the /PDSC_MASK qualifier, the compiler sets the
 PDSC$V_EXCEPTION_MODE field automatically, depending on the
 /IEEE_MODE qualifier setting:

  o  If /IEEE_MODE is specified with UNDERFLOW_TO_ZERO,
     DENORM_RESULTS, or INEXACT, then /PDSC_MASK is set to
     FULL_IEEE.

  o  In all other cases, /PDSC_MASK is set to SILENT.  This setting
     differs from the calling-standard-specified default of SIGNAL
     used by Fortran, and is largly responsible for the ANSI C
     conforming behavior of the math library when called from C or
     C++ programs.