================
@@ -8633,6 +8633,21 @@ class MappableExprsHandler {
       if (llvm::is_contained(C->getMotionModifiers(),
                              OMPC_MOTION_MODIFIER_present))
         Kind = Present;
+      if (llvm::is_contained(C->getMotionModifiers(),
+                             OMPC_MOTION_MODIFIER_iterator)) {
+        if (auto *IteratorExpr = dyn_cast<OMPIteratorExpr>(
+                C->getIteratorModifier()->IgnoreParenImpCasts())) {
+          const auto *VD =
+              llvm::dyn_cast<VarDecl>(IteratorExpr->getIteratorDecl(0));
+          CGF.EmitVarDecl(*VD);
+
+          OMPIteratorGeneratorScope IteratorScope(
+              CGF, cast_or_null<OMPIteratorExpr>(
+                       IteratorExpr ? IteratorExpr->IgnoreParenImpCasts()
+                                    : nullptr));
----------------
alexey-bataev wrote:

Why do you need this new scope? You do not use it, exit immediately after its 
is created

https://github.com/llvm/llvm-project/pull/159112
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to