[Bug c++/56506] variadic class template specialization not selected as best match
mmehlich at semanticdesigns dot com
Mon Mar 4 17:00:00 GMT 2013
--- Comment #3 from Michael Mehlich <mmehlich at semanticdesigns dot com> 2013-03-04 16:58:45 UTC ---
Considering that based on 14.5.3(5) a template member declaration
with T bound to int,bool,char must expand to
I'd consider it rather counter-intuitive if I cannot get a match as described
in my original message.
Does the standard actually specify how the matching process works in detail
in the presence of variadic templates? Going through the template section,
I haven't found anything definite that would put light onto this issue
(though I might have missed it).
I can't really understand your "because it is not followed by ...";
after all, in X<Y<Z<T...>, U>...> the parameter pack U is also not immediately
followed by a ..., so why is that case ok but my original one isn't?
It is pretty easy to implement a matcher that successfully matches the case
in the original message, so I don't think the standard has any excuse not to
consider this a successful match, either.
Notwithstanding that, the standards committee might have decided otherwise.
If so, where does it say so in the standard, resp. how can I conclude this
from what I can find in there?
More information about the Gcc-bugs