jhuber6 added a comment. In D91370#2392616 <https://reviews.llvm.org/D91370#2392616>, @ABataev wrote:
> Could you try this patch: > > diff --git a/clang/lib/CodeGen/CGOpenMPRuntime.cpp > b/clang/lib/CodeGen/CGOpenMPRuntime.cpp > index ce8846140d4..854b7f3e830 100644 > --- a/clang/lib/CodeGen/CGOpenMPRuntime.cpp > +++ b/clang/lib/CodeGen/CGOpenMPRuntime.cpp > @@ -9938,7 +9938,7 @@ void CGOpenMPRuntime::emitTargetCall( > MappedVarSet.insert(CI->getCapturedVar()); > else > MappedVarSet.insert(nullptr); > - if (CurInfo.BasePointers.empty()) > + if (CurInfo.BasePointers.empty() && !PartialStruct.Base.isValid()) > MEHandler.generateDefaultMapInfo(*CI, **RI, *CV, CurInfo); > // Generate correct mapping for variables captured by reference in > // lambdas. > @@ -9947,7 +9947,7 @@ void CGOpenMPRuntime::emitTargetCall( > CurInfo, LambdaPointers); > } > // We expect to have at least an element of information for this > capture. > - assert(!CurInfo.BasePointers.empty() && > + assert((!CurInfo.BasePointers.empty() || > PartialStruct.Base.isValid()) && > "Non-existing map pointer for capture!"); > assert(CurInfo.BasePointers.size() == CurInfo.Pointers.size() && > CurInfo.BasePointers.size() == CurInfo.Sizes.size() && Also I'm assuming you meant for this to be applied to the master breanch, and not in addition to the previous one. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91370/new/ https://reviews.llvm.org/D91370 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits