IANY (The GNU Fortran Compiler) (original) (raw)


8.138 IANY — Bitwise OR of array elements

Synopsis:

RESULT = IANY(ARRAY[, MASK])
RESULT = IANY(ARRAY, DIM[, MASK])

Description:

Reduces with bitwise OR (inclusive or) the elements of ARRAY along dimension DIM if the corresponding element in MASK is TRUE.

Class:

Transformational function

Arguments:

ARRAY Shall be an array of type INTEGER or UNSIGNED
DIM (Optional) shall be a scalar of type INTEGER with a value in the range from 1 to n, where n equals the rank of ARRAY.
MASK (Optional) shall be of type LOGICALand either be a scalar or an array of the same shape as ARRAY.

Return value:

The result is of the same type as ARRAY.

If DIM is absent, a scalar with the bitwise OR of all elements inARRAY is returned. Otherwise, an array of rank n-1, where n equals the rank of ARRAY, and a shape similar to that of ARRAY with dimension DIM dropped is returned.

Example:

PROGRAM test_iany INTEGER(1) :: a(2)

a(1) = b'00100100' a(2) = b'01101010'

! prints 01101110 PRINT '(b8.8)', IANY(a) END PROGRAM

Standard:

Fortran 2008 and later, extension for UNSIGNED (see Unsigned integers)

See also:

IPARITY — Bitwise XOR of array elements,
IALL — Bitwise AND of array elements,
IOR — Bitwise logical or