1! { dg-do compile }
2! { dg-options "-fcoarray=single" }
3!
4! PR fortran/53643
5!
6type t
7 integer, allocatable :: comp
8end type t
9contains
10 subroutine foo(x,y)
11   class(t), allocatable, intent(out) :: x(:)
12   class(t), intent(out) :: y(:)
13 end subroutine
14 subroutine foo2(x,y)
15   class(t), allocatable, intent(out) :: x
16   class(t), intent(out) :: y
17 end subroutine
18 subroutine bar(x,y)
19   class(t), intent(out) :: x(:)[*]
20   class(t), intent(out) :: y[*]
21 end subroutine
22 subroutine bar2(x,y)
23   type(t), intent(out) :: x(:)[*]
24   type(t), intent(out) :: y[*]
25 end subroutine
26end
27