Reduce nesting.

llvm-svn: 99889
This commit is contained in:
Anders Carlsson 2010-03-30 15:39:27 +00:00
parent 0c1dcb083e
commit a942dcd92b
1 changed files with 14 additions and 14 deletions

View File

@ -1679,9 +1679,11 @@ static void *GetKeyForBase(QualType BaseType) {
static void *GetKeyForMember(CXXBaseOrMemberInitializer *Member,
bool MemberMaybeAnon = false) {
if (!Member->isMemberInitializer())
return GetKeyForBase(QualType(Member->getBaseClass(), 0));
// For fields injected into the class via declaration of an anonymous union,
// use its anonymous union class declaration as the unique key.
if (Member->isMemberInitializer()) {
FieldDecl *Field = Member->getMember();
// After SetBaseOrMemberInitializers call, Field is the anonymous union
@ -1694,10 +1696,8 @@ static void *GetKeyForMember(CXXBaseOrMemberInitializer *Member,
if (RD->isAnonymousStructOrUnion())
return static_cast<void *>(RD);
}
return static_cast<void *>(Field);
}
return GetKeyForBase(QualType(Member->getBaseClass(), 0));
return static_cast<void *>(Field);
}
/// ActOnMemInitializers - Handle the member initializers for a constructor.