Lines Matching refs:RetValExp

3211 Sema::ActOnCapScopeReturnStmt(SourceLocation ReturnLoc, Expr *RetValExp) {  in ActOnCapScopeReturnStmt()  argument
3223 if (RetValExp) { in ActOnCapScopeReturnStmt()
3224 ExprResult ER = ActOnFinishFullExpr(RetValExp, ReturnLoc); in ActOnCapScopeReturnStmt()
3227 RetValExp = ER.get(); in ActOnCapScopeReturnStmt()
3229 return ReturnStmt::Create(Context, ReturnLoc, RetValExp, in ActOnCapScopeReturnStmt()
3242 if (DeduceFunctionTypeFromReturnExpr(FD, ReturnLoc, RetValExp, AT)) { in ActOnCapScopeReturnStmt()
3252 if (RetValExp && !isa<InitListExpr>(RetValExp)) { in ActOnCapScopeReturnStmt()
3253 ExprResult Result = DefaultFunctionArrayLvalueConversion(RetValExp); in ActOnCapScopeReturnStmt()
3256 RetValExp = Result.get(); in ActOnCapScopeReturnStmt()
3263 FnRetType = RetValExp->getType().getUnqualifiedType(); in ActOnCapScopeReturnStmt()
3267 if (RetValExp) { in ActOnCapScopeReturnStmt()
3272 << RetValExp->getSourceRange(); in ActOnCapScopeReturnStmt()
3311 if (RetValExp && !isa<InitListExpr>(RetValExp) && in ActOnCapScopeReturnStmt()
3313 (RetValExp->isTypeDependent() || in ActOnCapScopeReturnStmt()
3314 RetValExp->getType()->isVoidType()))) { in ActOnCapScopeReturnStmt()
3316 RetValExp->getType()->isVoidType()) in ActOnCapScopeReturnStmt()
3320 RetValExp = nullptr; in ActOnCapScopeReturnStmt()
3323 } else if (!RetValExp) { in ActOnCapScopeReturnStmt()
3325 } else if (!RetValExp->isTypeDependent()) { in ActOnCapScopeReturnStmt()
3334 NRVOCandidate = getCopyElisionCandidate(FnRetType, RetValExp, CES_Strict); in ActOnCapScopeReturnStmt()
3339 FnRetType, RetValExp); in ActOnCapScopeReturnStmt()
3344 RetValExp = Res.get(); in ActOnCapScopeReturnStmt()
3345 CheckReturnValExpr(RetValExp, FnRetType, ReturnLoc); in ActOnCapScopeReturnStmt()
3347 NRVOCandidate = getCopyElisionCandidate(FnRetType, RetValExp, CES_Strict); in ActOnCapScopeReturnStmt()
3350 if (RetValExp) { in ActOnCapScopeReturnStmt()
3351 ExprResult ER = ActOnFinishFullExpr(RetValExp, ReturnLoc); in ActOnCapScopeReturnStmt()
3354 RetValExp = ER.get(); in ActOnCapScopeReturnStmt()
3357 ReturnStmt::Create(Context, ReturnLoc, RetValExp, NRVOCandidate); in ActOnCapScopeReturnStmt()
3517 Sema::ActOnReturnStmt(SourceLocation ReturnLoc, Expr *RetValExp, in ActOnReturnStmt() argument
3519 StmtResult R = BuildReturnStmt(ReturnLoc, RetValExp); in ActOnReturnStmt()
3536 StmtResult Sema::BuildReturnStmt(SourceLocation ReturnLoc, Expr *RetValExp) { in BuildReturnStmt() argument
3538 if (RetValExp && DiagnoseUnexpandedParameterPack(RetValExp)) in BuildReturnStmt()
3542 return ActOnCapScopeReturnStmt(ReturnLoc, RetValExp); in BuildReturnStmt()
3556 if (FD->isMain() && RetValExp) in BuildReturnStmt()
3557 if (isa<CXXBoolLiteralExpr>(RetValExp)) in BuildReturnStmt()
3559 << RetValExp->getSourceRange(); in BuildReturnStmt()
3580 if (RetValExp) { in BuildReturnStmt()
3581 ExprResult ER = ActOnFinishFullExpr(RetValExp, ReturnLoc); in BuildReturnStmt()
3584 RetValExp = ER.get(); in BuildReturnStmt()
3586 return ReturnStmt::Create(Context, ReturnLoc, RetValExp, in BuildReturnStmt()
3595 if (DeduceFunctionTypeFromReturnExpr(FD, ReturnLoc, RetValExp, AT)) { in BuildReturnStmt()
3608 if (RetValExp) { in BuildReturnStmt()
3609 if (isa<InitListExpr>(RetValExp)) { in BuildReturnStmt()
3624 << RetValExp->getSourceRange(); in BuildReturnStmt()
3627 RetValExp = nullptr; in BuildReturnStmt()
3628 } else if (!RetValExp->isTypeDependent()) { in BuildReturnStmt()
3631 if (RetValExp->getType()->isVoidType()) { in BuildReturnStmt()
3640 ExprResult Result = RetValExp; in BuildReturnStmt()
3644 RetValExp = Result.get(); in BuildReturnStmt()
3645 RetValExp = ImpCastExprToType(RetValExp, in BuildReturnStmt()
3653 << RetValExp->getSourceRange(); in BuildReturnStmt()
3670 << RetValExp->getSourceRange(); in BuildReturnStmt()
3674 if (RetValExp) { in BuildReturnStmt()
3675 ExprResult ER = ActOnFinishFullExpr(RetValExp, ReturnLoc); in BuildReturnStmt()
3678 RetValExp = ER.get(); in BuildReturnStmt()
3682 Result = ReturnStmt::Create(Context, ReturnLoc, RetValExp, in BuildReturnStmt()
3684 } else if (!RetValExp && !HasDependentReturnType) { in BuildReturnStmt()
3708 assert(RetValExp || HasDependentReturnType); in BuildReturnStmt()
3719 if (RetValExp) in BuildReturnStmt()
3720 NRVOCandidate = getCopyElisionCandidate(FnRetType, RetValExp, CES_Strict); in BuildReturnStmt()
3721 if (!HasDependentReturnType && !RetValExp->isTypeDependent()) { in BuildReturnStmt()
3727 RetType, RetValExp); in BuildReturnStmt()
3732 RetValExp = Res.getAs<Expr>(); in BuildReturnStmt()
3741 Res = PerformCopyInitialization(Entity, ReturnLoc, RetValExp); in BuildReturnStmt()
3746 RetValExp = Res.getAs<Expr>(); in BuildReturnStmt()
3749 CheckReturnValExpr(RetValExp, FnRetType, ReturnLoc, isObjCMethod, Attrs, in BuildReturnStmt()
3753 if (RetValExp) { in BuildReturnStmt()
3754 ExprResult ER = ActOnFinishFullExpr(RetValExp, ReturnLoc); in BuildReturnStmt()
3757 RetValExp = ER.get(); in BuildReturnStmt()
3759 Result = ReturnStmt::Create(Context, ReturnLoc, RetValExp, NRVOCandidate); in BuildReturnStmt()