diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2009-07-15 22:34:08 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2009-07-15 22:34:08 +0000 |
commit | 560de45ccbf21c5e4dbeef3fc49f932e499cc181 (patch) | |
tree | f9d477eeec5d7b350031c47efa84bea707e325d5 /lib/Sema/SemaDeclCXX.cpp | |
parent | fde2efe96e00c5d03e7caaf0c1e67d7b011d9d0c (diff) |
Added ASTs to destructor decl AST for default destruction of object's
base/members.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75849 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaDeclCXX.cpp')
-rw-r--r-- | lib/Sema/SemaDeclCXX.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp index 7d039dc2d6..c62858ac73 100644 --- a/lib/Sema/SemaDeclCXX.cpp +++ b/lib/Sema/SemaDeclCXX.cpp @@ -902,15 +902,18 @@ void Sema::ActOnMemInitializers(DeclPtrTy ConstructorDecl, } } -void Sema::ActOnDefaultInitializers(DeclPtrTy ConstructorDecl) { - if (!ConstructorDecl) +void Sema::ActOnDefaultCDtorInitializers(DeclPtrTy CDtorDecl) { + if (!CDtorDecl) return; if (CXXConstructorDecl *Constructor - = dyn_cast<CXXConstructorDecl>(ConstructorDecl.getAs<Decl>())) + = dyn_cast<CXXConstructorDecl>(CDtorDecl.getAs<Decl>())) Constructor->setBaseOrMemberInitializers(Context, (CXXBaseOrMemberInitializer **)0, 0); - + else + if (CXXDestructorDecl *Destructor + = dyn_cast<CXXDestructorDecl>(CDtorDecl.getAs<Decl>())) + Destructor->setBaseOrMemberDestructions(Context); } namespace { |