reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/Sema/SemaStmt.cpp
 3250     if (RetValExp) {
 3252           ActOnFinishFullExpr(RetValExp, ReturnLoc, /*DiscardedValue*/ false);
 3255       RetValExp = ER.get();
 3257     return ReturnStmt::Create(Context, ReturnLoc, RetValExp,
 3270     if (DeduceFunctionTypeFromReturnExpr(FD, ReturnLoc, RetValExp, AT)) {
 3280     if (RetValExp && !isa<InitListExpr>(RetValExp)) {
 3280     if (RetValExp && !isa<InitListExpr>(RetValExp)) {
 3281       ExprResult Result = DefaultFunctionArrayLvalueConversion(RetValExp);
 3284       RetValExp = Result.get();
 3291         FnRetType = RetValExp->getType().getUnqualifiedType();
 3295       if (RetValExp) {
 3300           << RetValExp->getSourceRange();
 3339     if (RetValExp && !isa<InitListExpr>(RetValExp) &&
 3339     if (RetValExp && !isa<InitListExpr>(RetValExp) &&
 3341           (RetValExp->isTypeDependent() ||
 3342            RetValExp->getType()->isVoidType()))) {
 3344           RetValExp->getType()->isVoidType())
 3348         RetValExp = nullptr;
 3351   } else if (!RetValExp) {
 3353   } else if (!RetValExp->isTypeDependent()) {
 3362     NRVOCandidate = getCopyElisionCandidate(FnRetType, RetValExp, CES_Strict);
 3367                                                      FnRetType, RetValExp);
 3372     RetValExp = Res.get();
 3373     CheckReturnValExpr(RetValExp, FnRetType, ReturnLoc);
 3375     NRVOCandidate = getCopyElisionCandidate(FnRetType, RetValExp, CES_Strict);
 3378   if (RetValExp) {
 3380         ActOnFinishFullExpr(RetValExp, ReturnLoc, /*DiscardedValue*/ false);
 3383     RetValExp = ER.get();
 3386       ReturnStmt::Create(Context, ReturnLoc, RetValExp, NRVOCandidate);