compl(3I)

COMPL - Computes complement

As shipped in IRIX 6.5.7. Last changed in IRIX 6.5.5.

NAME
     COMPL - Computes complement

SYNOPSIS
     COMPL ([I=]i)

IMPLEMENTATION
     UNICOS, UNICOS/mk, IRIX systems

     CF90, MIPSpro 7 Fortran 90

STANDARDS
     Fortran extension

DESCRIPTION
     The COMPL intrinsic function computes the complement of i.  It accepts
     the following argument:

     i         A Boolean, integer, real, logical, or Cray pointer value.

     COMPL is an elemental function.  The name of this intrinsic cannot be
     passed as an argument.

     The following tables show both the logical complement and the bit-wise
     logical complement:

     ------------------------------------
     Logical        COMPL
     Variable       (Logical Variable)
     ------------------------------------
           T                  F
           F                  T
     ------------------------------------


     -----------------------------------
     Bit of        COMPL
     Variable      (Bit of Variable)
     -----------------------------------
          1                  0
          0                  1
     -----------------------------------

NOTES
     COMPL is outmoded.  Refer to the Fortran Language Reference Manual,
     Volume 2, for information about outmoded features and their preferred
     standard alternatives.

CAUTIONS
     Unexpected results can occur when Boolean functions are declared
     external and then used with logical arguments.  On UNICOS and
     UNICOS/mk systems, the external Boolean functions always treat their
     arguments as type Boolean and return a Boolean result.  On IRIX
     systems, the result is an integer.

RETURN VALUES
     When given an argument of type logical, COMPL computes a logical
     complement and returns a logical result.

     On UNICOS and UNICOS/mk systems, with an argument of type integer,
     real, Boolean, or Cray pointer, COMPL computes a bit-wise logical
     complement and returns a Boolean result.  No type conversion occurs.

     On IRIX systems, with an argument of type integer, real, Boolean, or
     Cray Pointer, COMPL computes a bit-wise logical complement and returns
     an integer result.

EXAMPLES
     The following section of Fortran code shows the COMPL function used
     with an argument of type logical:

          LOGICAL L1, L2
          ...
          L2 = COMPL(L1)

     The following section of Fortran code shows the COMPL function used
     with an argument of type integer.  The bit patterns of the argument
     and result are also given.  For clarity, only the rightmost 8 bits are
     shown.

          INTEGER I1, I2
          I1 = 240
          ...
          I2 = COMPL(I1)


                 -------------------------------
                | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
                 -------------------------------
                             I1

                 -------------------------------
                | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
                 -------------------------------
                             I2

SEE ALSO
     Intrinsic Procedures Reference Manual for the printed version of this
     man page.