summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGCXX.cpp
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-11-27 01:42:12 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-11-27 01:42:12 +0000
commit250534cf9a2a5c4431ef919e1a5e8f2cb1618b6c (patch)
tree885826fa256c75037e72e8ce520d4cdfcaa06b4f /clang/lib/CodeGen/CGCXX.cpp
parent5a4f772bc87182195d91ca2b032cb5db652e8403 (diff)
downloadbcm5719-llvm-250534cf9a2a5c4431ef919e1a5e8f2cb1618b6c.tar.gz
bcm5719-llvm-250534cf9a2a5c4431ef919e1a5e8f2cb1618b6c.zip
Fix for PR5594: use EmitGlobalDefinition instead of EmitCXXDestructor so that
we check whether the vtable needs to be generated. llvm-svn: 89984
Diffstat (limited to 'clang/lib/CodeGen/CGCXX.cpp')
-rw-r--r--clang/lib/CodeGen/CGCXX.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CGCXX.cpp b/clang/lib/CodeGen/CGCXX.cpp
index a51845a52be..a848b1269b9 100644
--- a/clang/lib/CodeGen/CGCXX.cpp
+++ b/clang/lib/CodeGen/CGCXX.cpp
@@ -793,9 +793,9 @@ const char *CodeGenModule::getMangledCXXCtorName(const CXXConstructorDecl *D,
void CodeGenModule::EmitCXXDestructors(const CXXDestructorDecl *D) {
if (D->isVirtual())
- EmitCXXDestructor(D, Dtor_Deleting);
- EmitCXXDestructor(D, Dtor_Complete);
- EmitCXXDestructor(D, Dtor_Base);
+ EmitGlobalDefinition(GlobalDecl(D, Dtor_Deleting));
+ EmitGlobalDefinition(GlobalDecl(D, Dtor_Complete));
+ EmitGlobalDefinition(GlobalDecl(D, Dtor_Base));
}
void CodeGenModule::EmitCXXDestructor(const CXXDestructorDecl *D,
OpenPOWER on IntegriCloud