From: Fariborz Jahanian Date: Wed, 2 Sep 2009 23:11:48 +0000 (+0000) Subject: Minor refactoring of my last patch. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=916a5ed560c015f6399909b1672ebe90d7f65635;p=clang Minor refactoring of my last patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80847 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp index a0b6e2c2f8..6a3dfc911f 100644 --- a/lib/Sema/SemaDeclCXX.cpp +++ b/lib/Sema/SemaDeclCXX.cpp @@ -1015,12 +1015,12 @@ void Sema::ActOnMemInitializers(DeclPtrTy ConstructorDecl, continue; FieldDecl *Field = Member->getMember(); QualType FT = Context.getBaseElementType(Field->getType()); - if (const RecordType* RT = FT->getAs()) { - CXXConstructorDecl *Ctor = - cast(RT->getDecl())->getDefaultConstructor(Context); - if (Ctor && !FT->isDependentType()) + if (FT->isDependentType()) + continue; + if (const RecordType* RT = FT->getAs()) + if (CXXConstructorDecl *Ctor = + cast(RT->getDecl())->getDefaultConstructor(Context)) MarkDeclarationReferenced(Ctor->getLocation(), Ctor); - } } if (Diags.getDiagnosticLevel(diag::warn_base_initialized) == Diagnostic::Ignored &&