[LLVMbugs] [Bug 23667] Clang fails to dllexport explicit class template specialization definition with previous explicit template specialization declaration
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Wed May 27 10:04:42 PDT 2015
https://llvm.org/bugs/show_bug.cgi?id=23667
Hans Wennborg <hans at chromium.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |---
--- Comment #2 from Hans Wennborg <hans at chromium.org> ---
We still fail in some situations:
template <typename T> struct S {
S(const S&) {};
void f() {};
};
extern template struct S<int>;
void use(S<int>& s) {
S<int> t(s);
s.f();
}
template struct __declspec(dllexport) S<int>;
In the example above, where S::f and S::S are referenced before the explicit
instantiation definition, S::f gets exported but S::S doesn't for some reason.
If use() is moved to after the explicit instantiation definition, both members
are exported.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150527/b4643b26/attachment.html>
More information about the llvm-bugs
mailing list