diff options
author | Shoaib Meenai <smeenai@fb.com> | 2017-01-13 01:28:34 +0000 |
---|---|---|
committer | Shoaib Meenai <smeenai@fb.com> | 2017-01-13 01:28:34 +0000 |
commit | 5adfb5a814768b76855a6ed90becae4331e09285 (patch) | |
tree | 1a0fd596eb9c8db2986546cc90292b025586e1d4 /llvm/lib/Analysis/ProfileSummaryInfo.cpp | |
parent | 2e041c9c20726fdd0754f8dee73430835eeaa31c (diff) | |
download | bcm5719-llvm-5adfb5a814768b76855a6ed90becae4331e09285.tar.gz bcm5719-llvm-5adfb5a814768b76855a6ed90becae4331e09285.zip |
[Sema] Restrict explicit instantation definition dllexport
In the case where the template class itself is already `dllexport`, the
implicit instantiation will have already emitted all members. When we
check the explicit instantiation definition, the `Specialization` will
have inherited the `dllexport` attribute, so we'll attempt to emit all
members for a second time, which causes an assertion failure. Restrict
the exporting to when the `dllexport` attribute is newly introduced by
the explicit instantiation definition.
Fixes PR31608.
Differential Revision: https://reviews.llvm.org/D28590
llvm-svn: 291877
Diffstat (limited to 'llvm/lib/Analysis/ProfileSummaryInfo.cpp')
0 files changed, 0 insertions, 0 deletions