!ERROR: Only the FROM, RELEASE, DELETE map types are permitted for MAP clauses on the TARGET EXIT DATA directive
!$omp target exit data map(to:a)
+ !$omp target update if(.true.) device(1) to(a) from(b) depend(inout:c) nowait
+
+ !ERROR: At most one IF clause can appear on the TARGET UPDATE directive
+ !$omp target update to(a) if(.true.) if(.false.)
+
+ !ERROR: At most one DEVICE clause can appear on the TARGET UPDATE directive
+ !$omp target update device(0) device(1) from(b)
+
!$omp target
!ERROR: `DISTRIBUTE` region has to be strictly nested inside `TEAMS` region.
!$omp distribute
}
def OMP_TargetUpdate : Directive<"target update"> {
let allowedClauses = [
- VersionedClause<OMPC_If>,
- VersionedClause<OMPC_Device>,
VersionedClause<OMPC_To>,
VersionedClause<OMPC_From>,
- VersionedClause<OMPC_NoWait>,
VersionedClause<OMPC_Depend>
];
+ let allowedOnceClauses = [
+ VersionedClause<OMPC_Device>,
+ VersionedClause<OMPC_If>,
+ VersionedClause<OMPC_NoWait>
+ ];
}
def OMP_ParallelFor : Directive<"parallel for"> {
let allowedClauses = [