[cfe-dev] DR941

Nikola Smiljanic via cfe-dev cfe-dev at lists.llvm.org
Tue Feb 16 22:16:51 PST 2016


I know you're all back from holidays, ping :).

On Tue, Dec 22, 2015 at 1:50 PM, Nikola Smiljanic <popizdeh at gmail.com>
wrote:

> So I'm looking at fixing this in Clang and after my naive approach failed
> I finally think I understand the issue at hand.
>
> When checking the explicit specialization Clang makes an implicit
> instantiation of the primary template. This happens inside the call to
> DeduceTemplateArguments. Existing declaration of the explicit template is
> then marked as a redeclaration of the newly created implicit instantiation.
>
> Interestingly the implicit instantiation is marked as deleted (because the
> primary template is) but the actual explicit specialization isn't.
>
> I came across David's fixme comment that mentions how we shouldn't be
> creating these implicit instantiations. So my question would be what's the
> right way to fix this? Not creating them at all, removing them at some
> point, replacing them with the actual explicit specialization or just
> trying to detect this pattern. Not creating them sounds best to me but I'm
> really lost as to how to achieve this. Help :)
>
> Nikola
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160217/7e9d13c0/attachment.html>


More information about the cfe-dev mailing list