[flang-commits] [flang] [mlir] [Flang][OpenMP] Support conditional lastprivate on host (PR #200086)

Tom Eccles via flang-commits flang-commits at lists.llvm.org
Mon Jun 22 07:16:22 PDT 2026


================
@@ -4997,6 +4997,19 @@ void OmpStructureChecker::Enter(const parser::OmpClause::Lastprivate &x) {
     using LastprivateModifier = parser::OmpLastprivateModifier;
     if (auto *modifier{OmpGetUniqueModifier<LastprivateModifier>(modifiers)}) {
       CheckLastprivateModifier(*modifier);
+      // A list item that appears in a lastprivate clause with a conditional
+      // modifier must be a scalar variable.
+      if (modifier->v == LastprivateModifier::Value::Conditional) {
+        for (auto &[symbol, source] : currSymbols) {
+          if (symbol->Rank() != 0) {
----------------
tblah wrote:

This still permits derived types.

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


More information about the flang-commits mailing list