Searched refs:FinalSuspend (Results 1 – 5 of 5) sorted by relevance
116 SubStmts[CoroutineBodyStmt::FinalSuspend] = Args.FinalSuspend; in CoroutineBodyStmt()
325 FinalSuspend, ///< The final suspend statement, run after the body. enumerator352 Expr *FinalSuspend = nullptr; member395 return getStoredStmts()[SubStmt::FinalSuspend]; in getFinalSuspendStmt()
657 bool Sema::checkFinalSuspendNoThrow(const Stmt *FinalSuspend) { in checkFinalSuspendNoThrow() argument663 checkNoThrow(*this, FinalSuspend, ThrowingDecls); in checkFinalSuspendNoThrow()739 StmtResult FinalSuspend = buildSuspends("final_suspend"); in ActOnCoroutineBodyStart() local740 if (FinalSuspend.isInvalid() || !checkFinalSuspendNoThrow(FinalSuspend.get())) in ActOnCoroutineBodyStart()743 ScopeInfo->setCoroutineSuspends(InitSuspend.get(), FinalSuspend.get()); in ActOnCoroutineBodyStart()1278 this->FinalSuspend = cast<Expr>(Fn.CoroutineSuspends.second); in makeInitialAndFinalSuspend()
8775 StmtResult FinalSuspend = in TransformCoroutineBodyStmt() local8777 if (FinalSuspend.isInvalid() || in TransformCoroutineBodyStmt()8778 !SemaRef.checkFinalSuspendNoThrow(FinalSuspend.get())) in TransformCoroutineBodyStmt()8780 ScopeInfo->setCoroutineSuspends(InitSuspend.get(), FinalSuspend.get()); in TransformCoroutineBodyStmt()8781 assert(isa<Expr>(InitSuspend.get()) && isa<Expr>(FinalSuspend.get())); in TransformCoroutineBodyStmt()
3169 bool checkFinalSuspendNoThrow(const Stmt *FinalSuspend);