From: Sean Hunt Date: Wed, 18 May 2011 20:57:13 +0000 (+0000) Subject: After consultation with doug, revert r131515. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=493ff72fa7c7b43ab5a8edddb5762d7b745bb2ab;p=clang After consultation with doug, revert r131515. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131574 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp index 9f146e9254..1227c4eff2 100644 --- a/lib/Sema/SemaDeclCXX.cpp +++ b/lib/Sema/SemaDeclCXX.cpp @@ -2997,12 +2997,6 @@ void Sema::CheckCompletedCXXClass(CXXRecordDecl *Record) { // have inherited constructors. DeclareInheritedConstructors(Record); - // Unfortunately, in C++0x mode, we additionally have to declare all - // implicit members in order to ensure we don't get a horrible evil bad - // infinite recursion from ShouldDelete* - if (getLangOptions().CPlusPlus0x) - ForceDeclarationOfImplicitMembers(Record); - CheckExplicitlyDefaultedMethods(Record); } @@ -3459,10 +3453,8 @@ bool Sema::ShouldDeleteDefaultConstructor(CXXConstructorDecl *CD) { } bool Sema::ShouldDeleteCopyConstructor(CXXConstructorDecl *CD) { - CXXRecordDecl *RD = CD->getParent()->getDefinition(); + CXXRecordDecl *RD = CD->getParent(); assert(!RD->isDependentType() && "do deletion after instantiation"); - assert(RD); - assert(CD->getParent() == RD); if (!LangOpts.CPlusPlus0x) return false;