diff options
author | Anders Carlsson <andersca@mac.com> | 2009-06-16 03:37:31 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-06-16 03:37:31 +0000 |
commit | a42ab8f3d5f402f8f08a9f3573e1e0b8ef03ad82 (patch) | |
tree | 96520a7ca85a6bad348f96262752713e20130469 /clang/lib/AST/ExprCXX.cpp | |
parent | 14491abe48e94d8f48c5178b8682317c9575a907 (diff) | |
download | bcm5719-llvm-a42ab8f3d5f402f8f08a9f3573e1e0b8ef03ad82.tar.gz bcm5719-llvm-a42ab8f3d5f402f8f08a9f3573e1e0b8ef03ad82.zip |
Handle temporaries in default arguments.
llvm-svn: 73462
Diffstat (limited to 'clang/lib/AST/ExprCXX.cpp')
-rw-r--r-- | clang/lib/AST/ExprCXX.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/clang/lib/AST/ExprCXX.cpp b/clang/lib/AST/ExprCXX.cpp index 8fd66a29817..18c0f77ab29 100644 --- a/clang/lib/AST/ExprCXX.cpp +++ b/clang/lib/AST/ExprCXX.cpp @@ -306,10 +306,11 @@ void CXXConstructExpr::Destroy(ASTContext &C) { CXXExprWithTemporaries::CXXExprWithTemporaries(Expr *subexpr, CXXTemporary **temps, unsigned numtemps, - bool destroytemps) + bool shoulddestroytemps) : Expr(CXXExprWithTemporariesClass, subexpr->getType(), subexpr->isTypeDependent(), subexpr->isValueDependent()), - SubExpr(subexpr), Temps(0), NumTemps(numtemps), DestroyTemps(destroytemps) { + SubExpr(subexpr), Temps(0), NumTemps(numtemps), + ShouldDestroyTemps(shoulddestroytemps) { if (NumTemps > 0) { Temps = new CXXTemporary*[NumTemps]; for (unsigned i = 0; i < NumTemps; ++i) @@ -321,9 +322,9 @@ CXXExprWithTemporaries *CXXExprWithTemporaries::Create(ASTContext &C, Expr *SubExpr, CXXTemporary **Temps, unsigned NumTemps, - bool DestroyTemps) { + bool ShouldDestroyTemps){ return new (C) CXXExprWithTemporaries(SubExpr, Temps, NumTemps, - DestroyTemps); + ShouldDestroyTemps); } void CXXExprWithTemporaries::Destroy(ASTContext &C) { |