[flang-commits] [flang] [flang][OpenMP] Fix crash on standalone ordered with depend(source|sink:) (PR #200193)

Krzysztof Parzyszek via flang-commits flang-commits at lists.llvm.org
Thu May 28 08:55:47 PDT 2026


kparzysz wrote:

A better fix would be to update the definition of `DependT`, e.g. add optional iteration vector (as in `Doacross`), and remove the special case for depend in Clauses.cpp, so that the old form of depend always generates `Depend`, and sets the optional iteration vector and keeps the locator list empty.

```
template <typename T, typename I, typename E> //
struct DependT {
  using Iterator = type::IteratorT<T, I, E>;
  using LocatorList = ObjectListT<I, E>;
  using DependenceType = tomp::type::DependenceType;
  using Vector = ListT<type::LoopIterationT<I, E>>;

  using TupleTrait = std::true_type;
  // Empty LocatorList means "omp_all_memory".
  std::tuple<DependenceType, OPT(Iterator), OPT(Vector), LocatorList> t;
};
```

https://github.com/llvm/llvm-project/pull/200193


More information about the flang-commits mailing list