diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gfortran.dg/coarray_26.f90')
-rw-r--r-- | gcc-4.9/gcc/testsuite/gfortran.dg/coarray_26.f90 | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gfortran.dg/coarray_26.f90 b/gcc-4.9/gcc/testsuite/gfortran.dg/coarray_26.f90 new file mode 100644 index 000000000..06ff4cf79 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gfortran.dg/coarray_26.f90 @@ -0,0 +1,53 @@ +! { 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 |