Intel® Fortran Compiler 18.0 Developer Guide and Reference

UCOBOUND

Inquiry Intrinsic Function (Generic): Returns the upper cobounds of a coarray.

result = UCOBOUND (coarray [,dim [, kind])

coarray

(Input) Must be a coarray; it can be of any type. It can be a scalar or an array. If it is allocatable, it must be allocated.

dim

(Input; optional) Must be an integer scalar with a value in the range 1 <= dim <= n, where n is the corank of coarray. The corresponding actual argument must not be an optional dummy argument.

kind

(Input; optional) Must be a scalar integer constant expression.

Results

The result type is integer. If kind is present, the kind parameter is that specified by kind; otherwise, the kind parameter is that of default integer type. The result is scalar if dim is present; otherwise, the result is an array of rank one and size n, wheren is the corank of coarray.

The result depends on whether dim is specified:

Example

If A is allocated by the statement ALLOCATE (A [2:3, 7:*]), then LCOBOUND (A) is [2, 7] and LCOBOUND (A, DIM=2) is 7.

If NUM_IMAGES( ) has the value 30, and coarray B is allocated by the statement ALLOCATE (B[2:3, 0:7, *]), then UCOBOUND (B) is [3, 7, 2] and UCOBOUND (B, DIM=2) is 7. Note that the cosubscripts [3, 7, 2] do not correspond to an actual image.