aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gfortran.dg/coarray_26.f90
diff options
context:
space:
mode:
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.f9053
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