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/CodeGen/MachineFunctionPass.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/CodeGen/MachineFunctionPass.cpp')
0 files changed, 0 insertions, 0 deletions

