diff options
author | Anders Carlsson <andersca@mac.com> | 2010-05-01 16:39:01 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2010-05-01 16:39:01 +0000 |
commit | 7911150a3d2c3412208ed366369f6e574e4a58ea (patch) | |
tree | 6e52eb92ca8581cb1c37c356cad5282a429fe041 /clang/lib/CodeGen/CGClass.cpp | |
parent | f4b87f191bab9dd36536e7c1b8b960411d95e1dc (diff) | |
download | bcm5719-llvm-7911150a3d2c3412208ed366369f6e574e4a58ea.tar.gz bcm5719-llvm-7911150a3d2c3412208ed366369f6e574e4a58ea.zip |
When defining implicit copy constructors, use SetBaseOrMemberInitializers to initialize the bases.
llvm-svn: 102842
Diffstat (limited to 'clang/lib/CodeGen/CGClass.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGClass.cpp | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/clang/lib/CodeGen/CGClass.cpp b/clang/lib/CodeGen/CGClass.cpp index 56d0e695c58..966a93c6520 100644 --- a/clang/lib/CodeGen/CGClass.cpp +++ b/clang/lib/CodeGen/CGClass.cpp @@ -692,18 +692,6 @@ CodeGenFunction::SynthesizeCXXCopyConstructor(const FunctionArgList &Args) { llvm::Value *SrcPtr = Builder.CreateLoad(GetAddrOfLocalVar(Args[SrcArgIndex].first)); - for (CXXRecordDecl::base_class_const_iterator Base = ClassDecl->bases_begin(); - Base != ClassDecl->bases_end(); ++Base) { - // FIXME. copy constrution of virtual base NYI - if (Base->isVirtual()) - continue; - - CXXRecordDecl *BaseClassDecl - = cast<CXXRecordDecl>(Base->getType()->getAs<RecordType>()->getDecl()); - EmitClassMemberwiseCopy(ThisPtr, SrcPtr, ClassDecl, BaseClassDecl, - Base->getType()); - } - for (CXXRecordDecl::field_iterator I = ClassDecl->field_begin(), E = ClassDecl->field_end(); I != E; ++I) { const FieldDecl *Field = *I; |