Intel® Fortran Compiler 17.0 Developer Guide and Reference
Inquiry Intrinsic Function (Generic): Indicates whether an allocatable array or allocatable scalar is currently allocated.
result = ALLOCATED ([ARRAY=]array)
result = ALLOCATED ([SCALAR=]scalar)
array |
(Input) Must be an allocatable array. |
scalar |
(Input) Must be an allocatable scalar. |
The result is a scalar of type default logical.
The result has the value true if argument array or scalar is currently allocated, false if the argument is not currently allocated, or undefined if its allocation status is undefined.
When the argument keyword ARRAY is used, array must be an allocatable array. When the argument keyword SCALAR is used, scalar must be an allocatable scalar.
REAL, ALLOCATABLE :: A(:)
...
IF (.NOT. ALLOCATED(A)) ALLOCATE (A (5))
Consider the following:
REAL, ALLOCATABLE, DIMENSION (:,:,:) :: E
PRINT *, ALLOCATED (E) ! Returns the value false
ALLOCATE (E (12, 15, 20))
PRINT *, ALLOCATED (E) ! Returns the value true