Intel® Fortran Compiler 17.0 Developer Guide and Reference
The characteristics of a procedure are as follows:
Whether it is classified as a function or subroutine
The characteristics of its result value if it is a function
The characteristics of its dummy arguments
Whether it is pure
Whether it is impure
Whether it is elemental
Whether it has the BIND attribute
Each dummy argument has the characteristic that it is a dummy data object, a dummy procedure, or an asterisk indicating an alternate return indicator.
The characteristics of a dummy data object are as follows:
Its type and type parameters (if any)
Its shape
Its intent
Its corank
Its codimensions
Whether it is optional
Whether it is allocatable
Whether it has the ASYNCHRONOUS, CONTIGUOUS, VALUE, or VOLATILE attribute
Whether it is a pointer or a target
Whether it is polymorphic
Whether or not it is assumed rank or assumed type
If a type parameter of an object or a bound of an array is not a constant expression, a characteristic is the exact dependence on the entities in the expression. Another characteristic is whether a shape, size, or type parameter is assumed or deferred.
The characteristics of a dummy procedure are as follows:
Whether it is optional
The explicitness of its interface
Its characteristics as a procedure if the interface is explicit
Whether it is a pointer
The characteristics of a function result are as follows:
Its type, type parameters (if any), and rank
Whether it is allocatable
Whether it has the CONTIGUOUS attribute
Whether it is a pointer
Whether it is a procedure pointer
Whether it is polymorphic
If a function result is an array that is not allocatable or a pointer, a characteristic is its shape.
If a type parameter of a function result or a bound of a function result array is not a constant expression, a characteristic is the exact dependence on the entities in the expression.
If type parameters of a function result are deferred, a characteristic is which parameters are deferred. Another characteristic is whether the length of a character function result is assumed.