summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-09-01 21:12:16 +0000
committerAnders Carlsson <andersca@mac.com>2009-09-01 21:12:16 +0000
commit783ab50b33524e650b63db647dc7daad24cacd23 (patch)
tree6a685dad221c118224a18db1ea3ecc92c2513ceb
parenta3a3f6fecd5d6095785ff452bbb3cd568c46966e (diff)
downloadbcm5719-llvm-783ab50b33524e650b63db647dc7daad24cacd23.tar.gz
bcm5719-llvm-783ab50b33524e650b63db647dc7daad24cacd23.zip
Assert that we don't have any virtual bases. We can emit dtors for polymorphics classes just fune.
llvm-svn: 80722
-rw-r--r--clang/lib/CodeGen/CGCXX.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGCXX.cpp b/clang/lib/CodeGen/CGCXX.cpp
index d71597fd93b..8f9147306ca 100644
--- a/clang/lib/CodeGen/CGCXX.cpp
+++ b/clang/lib/CodeGen/CGCXX.cpp
@@ -1744,8 +1744,8 @@ void CodeGenFunction::EmitCtorPrologue(const CXXConstructorDecl *CD) {
/// FIXME: This needs to take a CXXDtorType.
void CodeGenFunction::EmitDtorEpilogue(const CXXDestructorDecl *DD) {
const CXXRecordDecl *ClassDecl = cast<CXXRecordDecl>(DD->getDeclContext());
- assert(!ClassDecl->isPolymorphic() &&
- "FIXME. polymorphic destruction not supported");
+ assert(!ClassDecl->getNumVBases() &&
+ "FIXME: Destruction of virtual bases not supported");
(void)ClassDecl; // prevent warning.
for (CXXDestructorDecl::destr_const_iterator *B = DD->destr_begin(),
OpenPOWER on IntegriCloud