Allow instantiation of NULL expressions and statements

llvm-svn: 71889
This commit is contained in:
Douglas Gregor 2009-05-15 20:47:12 +00:00
parent 0aa5c4565d
commit 3f17b47c7e
2 changed files with 6 additions and 0 deletions

View File

@ -432,6 +432,9 @@ TemplateExprInstantiator::VisitCXXThisExpr(CXXThisExpr *E) {
Sema::OwningExprResult
Sema::InstantiateExpr(Expr *E, const TemplateArgumentList &TemplateArgs) {
if (!E)
return Owned((Expr *)0);
TemplateExprInstantiator Instantiator(*this, TemplateArgs);
return Instantiator.Visit(E);
}

View File

@ -166,6 +166,9 @@ Sema::OwningStmtResult TemplateStmtInstantiator::VisitExpr(Expr *E) {
Sema::OwningStmtResult
Sema::InstantiateStmt(Stmt *S, const TemplateArgumentList &TemplateArgs) {
if (!S)
return Owned((Stmt *)0);
TemplateStmtInstantiator Instantiator(*this, TemplateArgs);
return Instantiator.Visit(S);
}