================ @@ -11077,16 +11077,65 @@ OMPClause *TreeTransform<Derived>::TransformOMPXBareClause(OMPXBareClause *C) { //===----------------------------------------------------------------------===// // OpenACC transformation //===----------------------------------------------------------------------===// +template <typename Derived> +OpenACCClause *TreeTransform<Derived>::TransformOpenACCClause( + ArrayRef<const OpenACCClause *> ExistingClauses, + OpenACCDirectiveKind DirKind, const OpenACCClause *OldClause) { + + SemaOpenACC::OpenACCParsedClause ParsedClause( + DirKind, OldClause->getClauseKind(), OldClause->getBeginLoc()); + ParsedClause.setEndLoc(OldClause->getEndLoc()); + + if (const auto *WithParms = dyn_cast<OpenACCClauseWithParams>(OldClause)) + ParsedClause.setLParenLoc(WithParms->getLParenLoc()); + + switch (OldClause->getClauseKind()) { + // TODO OpenACC: Transform individual clauses, and set their info in + // ParsedClause. + default: + assert(false && "Unhandled OpenACC clause in TreeTransform"); + return nullptr; + } + + return getSema().OpenACC().ActOnClause(ExistingClauses, ParsedClause); +} + +template <typename Derived> +llvm::SmallVector<OpenACCClause *> +TreeTransform<Derived>::TransformOpenACCClauseList( + OpenACCDirectiveKind DirKind, ArrayRef<const OpenACCClause *> OldClauses) { ---------------- alexey-bataev wrote:
Do you have the test for this? https://github.com/llvm/llvm-project/pull/87821 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits