# COSHAPE

Inquiry Intrinsic Function (Generic): Returns the sizes of codimensions of a coarray.

## Syntax

result = COSHAPE (coarray [, kind])

coarray | (Input) Is a coarray. It may be of any data type. It must not be an unallocated allocatable coarray.
kind | (Input; optional) Must be a scalar integer constant expression.

## Results

The result is an integer array of rank one whose size is equal to the corank of coarray. If kind is present, the kind parameter of the result is that specified by kind; otherwise, the kind parameter of the result is that of default integer.

The result has a value whose ith element is equal to the size of the ith codimension of coarray as provided by UCOBOUND(coarray, i) − LCOBOUND(coarray, i) + 1.

The setting of compiler options specifying integer size can affect this function.

## Example

Consider the following coarray declaration:

    REAL :: X (10, 20) [10, -1:8, 0:*]

It NUM_IMAGES() is 200, it has these properties:

- RANK (X) == 2

- corank of X == 3

- SHAPE (X) == [10,20]

- COSHAPE (X) == [10,10,2]

- LCOBOUND (X) == [1, -1, 0]

- UCOBOUND (X) == [10, 8, 1]

Parent topic: C to D

## See Also

Coarrays
Using Coarrays
CODIMENSION
LCOBOUND
UCOBOUND