================ @@ -11196,6 +11198,31 @@ void OpenACCClauseTransform<Derived>::VisitNumGangsClause( ParsedClause.getLParenLoc(), ParsedClause.getIntExprs(), ParsedClause.getEndLoc()); } + +template <typename Derived> +void OpenACCClauseTransform<Derived>::VisitPrivateClause( + const OpenACCPrivateClause &C) { + llvm::SmallVector<Expr *> InstantiatedVarList; + + for (Expr *CurVar : C.getVarList()) { + ExprResult Res = Self.TransformExpr(CurVar); + + if (!Res.isUsable()) + return; + + Res = Self.getSema().OpenACC().ActOnVar(Res.get()); + + if (Res.isUsable()) + InstantiatedVarList.push_back(Res.get()); + } + ParsedClause.setVarListDetails(std::move(InstantiatedVarList)); ---------------- erichkeane wrote:
In this case it is because ParsedClause gets ownership of it, and it isn't used after this, so it is to save the copy. https://github.com/llvm/llvm-project/pull/90521 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits