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

ID 767251
Date 3/22/2024
Public
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.