https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97212
Bug ID: 97212 Summary: [OpenMP] 'depend' clause with 'target nowait' (!) + 'task' does not work Product: gcc Version: 11.0 Status: UNCONFIRMED Keywords: openmp, wrong-code Severity: normal Priority: P3 Component: libgomp Assignee: unassigned at gcc dot gnu.org Reporter: burnus at gcc dot gnu.org CC: jakub at gcc dot gnu.org Target Milestone: --- Created attachment 49274 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49274&action=edit C testcase, run with -fopenmp The SOLLVE_VV testcase https://github.com/SOLLVE/sollve_vv/blob/master/tests/4.5/task/test_target_and_task_nowait.c FAILS. Note: It also fails with a compiler which is not even configured for offloading and, hence, everything is run on the host. It uses with 'nowait' and 'depend': #pragma omp target map(tofrom: a, sum) depend(out: a) nowait ... (set 'a') ... #pragma omp task depend(in: a) shared(a,errors) ... check value of ... A comment indicates a problem with real-world code: // This test checks if dependence expressed on target and task // regions are honoured in the presense of nowait. // This test is motivated by OpenMP usage in QMCPack.