https://github.com/SunilKuravinakop created https://github.com/llvm/llvm-project/pull/160846
Changes to support for array elements in reduction clause e.g. "reduction (+:a[1])" >From 5e43cb51154479109e6596d83764e3b47183bd16 Mon Sep 17 00:00:00 2001 From: Sunil Kuravinakop <[email protected]> Date: Fri, 26 Sep 2025 03:25:57 -0500 Subject: [PATCH] Changes for array elements in reduction e.g. "reduction (+:a[1])" modified: clang/lib/Sema/SemaOpenMP.cpp --- clang/lib/Sema/SemaOpenMP.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/clang/lib/Sema/SemaOpenMP.cpp b/clang/lib/Sema/SemaOpenMP.cpp index 63a56a6583efc..5a40603ecf320 100644 --- a/clang/lib/Sema/SemaOpenMP.cpp +++ b/clang/lib/Sema/SemaOpenMP.cpp @@ -2419,8 +2419,10 @@ VarDecl *SemaOpenMP::isOpenMPCapturedDecl(ValueDecl *D, bool CheckScopeInfo, return VD ? VD : Info.second; DSAStackTy::DSAVarData DVarTop = DSAStack->getTopDSA(D, DSAStack->isClauseParsingMode()); + if (DVarTop.CKind != OMPC_unknown && isOpenMPPrivate(DVarTop.CKind) && - (!VD || VD->hasLocalStorage() || !DVarTop.AppliedToPointee)) + (!VD || VD->hasLocalStorage() || + !(DVarTop.AppliedToPointee && DVarTop.CKind != OMPC_reduction))) return VD ? VD : cast<VarDecl>(DVarTop.PrivateCopy->getDecl()); // Threadprivate variables must not be captured. if (isOpenMPThreadPrivate(DVarTop.CKind)) _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
