Refine vtable building for the secondary vtables to exclude yet more
cases where a virtual base was already used as a primary base class.
WIP.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78820 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h
index ebb35ba..ece4f10 100644
--- a/lib/CodeGen/CodeGenFunction.h
+++ b/lib/CodeGen/CodeGenFunction.h
@@ -363,8 +363,9 @@
const CXXRecordDecl *Class,
llvm::Constant *rtti,
std::vector<llvm::Constant *> &methods,
- bool isPrimary = false,
- bool ForVirtualBase = false);
+ bool isPrimary,
+ bool ForVirtualBase,
+ llvm::SmallSet<const CXXRecordDecl *, 32> &IndirectPrimary);
llvm::Value *GenerateVtable(const CXXRecordDecl *RD);
void EmitCtorPrologue(const CXXConstructorDecl *CD);