Hi!

The final standard now explicitly lists how copyin should copy allocatables.
Here is a testcase for something that hasn't been covered by the testsuite
yet.

2011-07-12  Jakub Jelinek  <ja...@redhat.com>

        * testsuite/libgomp.fortran/allocatable8.f90: New test.

--- libgomp/testsuite/libgomp.fortran/allocatable8.f90.jj       2011-07-12 
15:42:56.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/allocatable8.f90  2011-07-12 
15:45:00.000000000 +0200
@@ -0,0 +1,14 @@
+! { dg-do run }
+! { dg-require-effective-target tls_runtime }
+!$ use omp_lib
+
+  integer, save, allocatable :: a(:, :)
+  logical :: l
+!$omp threadprivate (a)
+  if (allocated (a)) call abort
+  l = .false.
+!$omp parallel copyin (a) num_threads (4) reduction(.or.:l)
+  l = l.or.allocated (a)
+!$omp end parallel
+  if (l.or.allocated (a)) call abort
+end

        Jakub

Reply via email to