[flang-commits] [clang] [flang] [llvm] [clang][flang][OpenMP] Fix context selector matching and scoring (PR #224431)

via flang-commits flang-commits at lists.llvm.org
Tue Oct 13 16:53:11 PDT 2026


================
@@ -7163,50 +7247,59 @@ static lower::pft::Evaluation *spliceAssociatedDoEval(
          "metadirective eval not found in parent list");
 
   auto firstAssociatedIt = std::next(metaIt);
-  auto loopIt = firstAssociatedIt;
-  while (loopIt != parentList->end() &&
-         isIgnorableMetadirectiveLoopAssociationEval(*loopIt))
-    ++loopIt;
+  auto associatedIt = firstAssociatedIt;
+  auto isNonExecutableDirective = [](lower::pft::Evaluation &e) {
+    const auto *directive = e.getIf<parser::CompilerDirective>();
+    return directive && isNonExecutableCompilerDirective(*directive);
----------------
MattPD wrote:

Confirmed at e604e9d: TARGET no longer maps `x` and still captures the BLOCK's references.


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


More information about the flang-commits mailing list