diff options
-rw-r--r-- | lib/Sema/SemaTemplateInstantiateStmt.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/lib/Sema/SemaTemplateInstantiateStmt.cpp b/lib/Sema/SemaTemplateInstantiateStmt.cpp index 957402ac6f..8bdb42b58f 100644 --- a/lib/Sema/SemaTemplateInstantiateStmt.cpp +++ b/lib/Sema/SemaTemplateInstantiateStmt.cpp @@ -98,13 +98,10 @@ Sema::OwningStmtResult TemplateStmtInstantiator::VisitGotoStmt(GotoStmt *S) { Sema::OwningStmtResult TemplateStmtInstantiator::VisitReturnStmt(ReturnStmt *S) { - Sema::OwningExprResult Result = SemaRef.ExprEmpty(); - if (Expr *E = S->getRetValue()) { - Result = SemaRef.InstantiateExpr(E, TemplateArgs); - - if (Result.isInvalid()) - return SemaRef.StmtError(); - } + Sema::OwningExprResult Result = + SemaRef.InstantiateExpr(S->getRetValue(), TemplateArgs); + if (Result.isInvalid()) + return SemaRef.StmtError(); return SemaRef.ActOnReturnStmt(S->getReturnLoc(), move(Result)); } |