Starts two or more data elements in one program unit at the same
storage location, thereby overlaying them in memory. Statement
format:
EQUIVALENCE (nlist)[,(nlist)]...
nlist Is a list of variables, array elements, arrays,
or character substring references, separated by
commas. You must specify at least two of these
entities in each list.
The elements named within each set of parentheses are given the
same storage location. The data elements do not have to be of the
same type or length. An equivalency begins with the first byte of
each element. When an array or substring element is equivalenced,
the entire array or string is equivalenced in its normal linear
storage.
You cannot equivalence array or string elements in a manner that is
inconsistent with their normal linear order. You cannot
equivalence elements of the same array or string. You cannot
equivalence two elements that are both in common areas.
The following objects cannot be specified in EQUIVALENCE
statements:
o A dummy argument
o An allocatable array
o A pointer
o An object of nonsequence derived type
o An object of sequence derived type containing a pointer in the
structure
o A function, entry, or result name
o A named constant
o A structure component
o A subobject of any of the above objects
You can identify a multidimensional array element by a single
subscript. The single subscript designates the absolute position
of the element within the array.