2 ! { dg-options "-fcoarray=single" }
8 type, extends(lock_type
) :: lock
14 type(lock_type
) :: tl
[*] = lock_type ()
16 tl
= lock_type () ! { dg-error "variable definition context" }
23 type(lock_type
) :: lock
27 type(t
), pointer :: x
! { dg-error "Pointer component x at .1. has a noncoarray subcomponent of type LOCK_TYPE, which must have a codimension or be a subcomponent of a coarray" }
35 type(lock_type
), allocatable
:: lock
! { dg-error "Allocatable component lock at .1. of type LOCK_TYPE must have a codimension" }
38 type(lock_type
) :: lock
41 type(t2
), allocatable
:: lock_cmp
44 integer, allocatable
:: a
[:]
45 type(t2
) :: b
! { dg-error "Noncoarray component b at .1. of type LOCK_TYPE or with subcomponent of type LOCK_TYPE must have a codimension or be a subcomponent of a coarray. .Variables of type t4 may not have a codimension as already a coarray subcomponent exists." }
48 type(t2
) :: c
! { dg-error "Noncoarray component c at .1. of type LOCK_TYPE or with subcomponent of type LOCK_TYPE must have a codimension or be a subcomponent of a coarray. .Variables of type t5 may not have a codimension as d at .2. has a codimension or a coarray subcomponent." }
49 integer, allocatable
:: d
[:] ! { dg-error "Noncoarray component c at .1. of type LOCK_TYPE or with subcomponent of type LOCK_TYPE must have a codimension or be a subcomponent of a coarray. .Variables of type t5 may not have a codimension as d at .2. has a codimension or a coarray subcomponent." }