Explicit interface
A procedure must have an explicit interface in any of the following
cases:
- A reference to the procedure appears
- with an argument keyword
- as a defined assignment (for subroutines only)
- in an expression as a defined operator (for functions only)
- as a reference by its generic name
- in a context that requires it to be pure
- The procedure has
- a dummy argument that has the
ALLOCATABLE,
OPTIONAL, POINTER, TARGET or
VALUE
attributes
a
dummy argument that is polymorphic
- an array-valued result (for functions only)
- a result whose length type parameter is neither assumed nor constant (for character functions only)
- a pointer or allocatable result (for functions only)
- a dummy argument that is an assumed-shape array
- a dummy argument that has the
- The procedure is elemental.
The
procedure has the BIND attribute.


