| ! { dg-do compile } |
| ! { dg-options "-fcoarray=single" } |
| ! |
| ! Coarray declaration constraint checks |
| ! |
| |
| function foo3a() result(res) |
| implicit none |
| integer :: res |
| codimension :: res[*] ! { dg-error "CODIMENSION attribute conflicts with RESULT" } |
| end |
| |
| function foo2a() result(res) |
| integer :: res[*] ! { dg-error "CODIMENSION attribute conflicts with RESULT" } |
| end |
| |
| function fooa() result(res) ! { dg-error "shall not be a coarray or have a coarray component" } |
| implicit none |
| type t |
| integer, allocatable :: A[:] |
| end type t |
| type(t):: res |
| end |
| |
| function foo3() ! { dg-error "shall not be a coarray or have a coarray component" } |
| implicit none |
| integer :: foo3 |
| codimension :: foo3[*] |
| end |
| |
| function foo2() ! { dg-error "shall not be a coarray or have a coarray component" } |
| implicit none |
| integer :: foo2[*] |
| end |
| |
| function foo() ! { dg-error "shall not be a coarray or have a coarray component" } |
| type t |
| integer, allocatable :: A[:] |
| end type t |
| type(t):: foo |
| end |
| |
| subroutine test() |
| use iso_c_binding |
| implicit none |
| type(c_ptr), save :: caf[*] ! { dg-error "shall not be a coarray" } |
| end subroutine test |
| |
| subroutine test2() |
| use iso_c_binding |
| implicit none |
| type(c_funptr), save :: caf[*] ! { dg-error "shall not be a coarray" } |
| end subroutine test2 |