PR fortran/100642
gcc/fortran/ChangeLog:
* openmp.c (omp_code_to_statement): Add missing EXEC_OMP_DEPOBJ.
gcc/testsuite/ChangeLog:
* gfortran.dg/goacc-gomp/depobj.f90: New test.
return ST_OMP_PARALLEL_DO;
case EXEC_OMP_PARALLEL_DO_SIMD:
return ST_OMP_PARALLEL_DO_SIMD;
-
+ case EXEC_OMP_DEPOBJ:
+ return ST_OMP_DEPOBJ;
default:
gcc_unreachable ();
}
--- /dev/null
+! PR fortran/100642
+! Contributed by G. Steinmetz
+program p
+ !use omp_lib, only: omp_depend_kind
+ use iso_c_binding, only: c_intptr_t
+ integer, parameter :: omp_depend_kind = 2*c_intptr_t
+ integer(omp_depend_kind) :: a, b
+ !$acc data
+ !$omp depobj(b) depend(out:a) ! { dg-error "The !\\\$OMP DEPOBJ directive cannot be specified within a !\\\$ACC DATA region" }
+ !$acc end data
+end