https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104545

            Bug ID: 104545
           Summary: [OpenMP & Fortran] Pointers issue in combination of
                    depobj construct and depend clause with depobj
                    dependence-type
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marcel at codesourcery dot com
  Target Milestone: ---

Created attachment 52445
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52445&action=edit
test which fails due to the issue

Defining a dependence object "obj1" for a pointer "p" with:

  !$omp depobj(obj1) depend(in: p)

is not correctly considered at execution time when used in a depend clause
like:

  !$omp task depend(depobj: obj1)

even if the pointer is associated. This effects for instance that tasks in a
parallel construct are not executed in the correct order (see attached test
case).

This is not an issue if the locator ("p") has type integer e.g. but does not
work with pointer type.

This is not an issue for C/C++, only for Fortran.

A complete test case which fails due to this issue is attached.

Reply via email to