1! { dg-do compile }
2! { dg-options "-fcoarray=single" }
3!
4use iso_fortran_env
5implicit none
6
7type t
8  integer, pointer :: caf2[:] ! { dg-error "must be allocatable with deferred shape" }
9end type t
10
11integer, pointer :: caf[*] ! { dg-error "POINTER attribute conflicts with CODIMENSION attribute" }
12
13type t2
14  type(lock_type), pointer :: lock_it ! { dg-error "Component lock_it at .1. of type LOCK_TYPE must have a codimension or be a subcomponent of a coarray, which is not possible as the component has the pointer attribute" }
15end type t2
16type(t2) :: caf3[*]
17
18type t3
19  type(lock_type) :: x
20end type t3
21
22type t4
23  type(t3), pointer :: y ! { dg-error "Pointer component y at .1. has a noncoarray subcomponent of type LOCK_TYPE, which must have a codimension or be a subcomponent of a coarray" }
24end type t4
25
26end
27