1! { dg-do compile }
2!
3! PR 60232: [OOP] The rank of the element in the structure constructor does not match that of the component
4!
5! Contributed by Antony Lewis <antony@cosmologist.info>
6
7module ObjectLists
8  implicit none
9
10  Type TObjectList
11  contains
12    procedure :: ArrayItem
13  end Type
14
15contains
16
17  function ArrayItem(L) result(P)
18    Class(TObjectList) :: L
19    Class(TObjectList), pointer :: P(:)
20  end function
21
22end module
23
24
25  use ObjectLists
26  implicit none
27
28  Type, extends(TObjectList):: TSampleList
29  end Type
30
31contains
32
33  subroutine TSampleList_ConfidVal(L)
34    Class(TSampleList) :: L
35  end subroutine
36
37end
38
39! { dg-final { cleanup-modules "ObjectLists" } }
40