[flang-commits] [flang] [llvm] [flang][OpenMP] Try to unify induction var privatization for OMP regions. (PR #91116)
via flang-commits
flang-commits at lists.llvm.org
Thu May 16 07:14:13 PDT 2024
================
@@ -289,12 +290,34 @@ void DataSharingProcessor::collectSymbolsInNestedRegions(
eval.getNestedEvaluations()) {
if (nestedEval.hasNestedEvaluations()) {
if (nestedEval.isConstruct())
- // Recursively look for OpenMP constructs within `nestedEval`'s region
collectSymbolsInNestedRegions(nestedEval, flag, symbolsInNestedRegions);
- else
- converter.collectSymbolSet(nestedEval, symbolsInNestedRegions, flag,
- /*collectSymbols=*/true,
- /*collectHostAssociatedSymbols=*/false);
+ else {
+ bool isOrderedConstruct = [&]() {
----------------
NimishMishra wrote:
I have a small question. I am not able to map how control-flow is coming to `collectSymbolsInNestedRegions` and other functionality, which is related to default clause. When I try a simple example as:
```
program main
integer :: a(5)
!$omp do ordered default(private)
do i = 2, 10
end do
!$omp end do
end program main
```
I get semantic error as: `error: DEFAULT clause is not allowed on the DO directive`
https://github.com/llvm/llvm-project/pull/91116
More information about the flang-commits
mailing list