================ @@ -82,22 +119,22 @@ bool SemaOpenACC::ActOnStartStmtDirective(OpenACCDirectiveKind K, return diagnoseConstructAppertainment(*this, K, StartLoc, /*IsStmt=*/true); } -StmtResult SemaOpenACC::ActOnEndStmtDirective(OpenACCDirectiveKind K, - SourceLocation StartLoc, - SourceLocation EndLoc, - StmtResult AssocStmt) { +StmtResult SemaOpenACC::ActOnEndStmtDirective( + OpenACCDirectiveKind K, SourceLocation StartLoc, SourceLocation EndLoc, + MutableArrayRef<OpenACCClause *> Clauses, StmtResult AssocStmt) { ---------------- erichkeane wrote:
The result of these changes is that the 'DestroyUnusedClauses' can no longer set the values to `nullptr`, and also 'deleting' stuff that were passed by an ArrayRef. This is actually ALSO causing me to think we should be passing this as an llvm::SmallVector (and moving it into here!) to make it clear that this function is stealing the 'ownership' of these things. WDYT? 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