summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGCXX.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-10-07 13:34:42 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-10-07 13:34:42 +0000
commite04a17da8185d5f38fec8dea62b332bbde3a1d8e (patch)
treef4548d4cb2eb78170680d78aed55e1106a858512 /clang/lib/CodeGen/CGCXX.cpp
parentd8b4ec0dad34ebe5e2683b6bcf4e9f82e9cc169f (diff)
downloadbcm5719-llvm-e04a17da8185d5f38fec8dea62b332bbde3a1d8e.tar.gz
bcm5719-llvm-e04a17da8185d5f38fec8dea62b332bbde3a1d8e.zip
Allow dllexport alias to base destructors.
We used to avoid these, but it looks like we did so just because we were not handling dllexport alias correctly. Dario Domizioli fixed that, so allow these aliases. Based on a patch by Dario Domizioli! llvm-svn: 219206
Diffstat (limited to 'clang/lib/CodeGen/CGCXX.cpp')
-rw-r--r--clang/lib/CodeGen/CGCXX.cpp6
1 files changed, 1 insertions, 5 deletions
diff --git a/clang/lib/CodeGen/CGCXX.cpp b/clang/lib/CodeGen/CGCXX.cpp
index 6d10361bf90..93e17601cc6 100644
--- a/clang/lib/CodeGen/CGCXX.cpp
+++ b/clang/lib/CodeGen/CGCXX.cpp
@@ -44,10 +44,6 @@ bool CodeGenModule::TryEmitBaseDestructorAsAlias(const CXXDestructorDecl *D) {
if (!D->hasTrivialBody())
return true;
- // For exported destructors, we need a full definition.
- if (D->hasAttr<DLLExportAttr>())
- return true;
-
const CXXRecordDecl *Class = D->getParent();
// If we need to manipulate a VTT parameter, give up.
@@ -191,7 +187,7 @@ bool CodeGenModule::TryEmitDefinitionAsAlias(GlobalDecl AliasDecl,
}
// Finally, set up the alias with its proper name and attributes.
- SetCommonAttributes(cast<NamedDecl>(AliasDecl.getDecl()), Alias);
+ setAliasAttributes(cast<NamedDecl>(AliasDecl.getDecl()), Alias);
return false;
}
OpenPOWER on IntegriCloud