Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 9/08/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Type Parameter Order for Parameterized Derived Types

The type parameter order of a non-extended type is the order of the type parameter list in the derived type definition. The type parameter order of an extended type consists of the order of its parent type followed by the order of the type parameter list in the derived type definition.

A type parameter declared in an extended type must not have the same name as any accessible component or type parameter of its parent type.

Examples

Consider the following:

Type :: t1 (k1,k2)
  Integer, kind :: k1,k2
  Real(k1) ::  a(k2)
End type

Type, extends (t1) :: t2(k3)
  Integer, kind :: k3
  Logical(k3) flag
End type

The type parameter order for type t1 is k1, then k2.

The type parameter order for type t2 is k1, then k2, then k3.