| ! { dg-do compile } |
| ! { dg-options "-fcoarray=single" } |
| ! |
| ! |
| type t |
| end type t |
| type t2 |
| end type t2 |
| contains |
| elemental subroutine foo0(v) ! OK |
| class(t), intent(in) :: v |
| end subroutine |
| |
| elemental subroutine foo1(w) ! { dg-error "Argument 'w' of elemental procedure at .1. cannot have the ALLOCATABLE attribute" } |
| class(t), allocatable, intent(in) :: w |
| end subroutine |
| |
| elemental subroutine foo2(x) ! { dg-error "Argument 'x' of elemental procedure at .1. cannot have the POINTER attribute" } |
| class(t), pointer, intent(in) :: x |
| end subroutine |
| |
| elemental subroutine foo3(y) ! { dg-error "Coarray dummy argument 'y' at .1. to elemental procedure" } |
| class(t2), intent(in) :: y[*] |
| end subroutine |
| |
| elemental subroutine foo4(z) ! { dg-error "Argument 'z' of elemental procedure at .1. must be scalar" } |
| class(t), intent(in) :: z(:) |
| end subroutine |
| |
| end |