[PATCH] PR c++/52343 - error with alias template as template template argument
Dodji Seketeli
dodji@redhat.com
Sat Dec 22 15:53:00 GMT 2012
Gabriel Dos Reis <gdr@integrable-solutions.net> writes:
> Thank you very much for the explanation; your previous message
> makes sense to me now.
You are welcome.
> The question I have is why are we using TREE_TYPE of a TEMPLATE_DECL
> to represent the current instantiation of a template alias?
My understanding is that in the instantiation at line 7 below
1 template<typename>
2 using A = int;
3
4 template<template<class> class>
5 struct B {};
6
7 B<A> b;
check_instantiated_arg is not looking at the current instantiation of
the template alias A. Rather, it is looking at the template-name A
(which resolved, IMHO rightfully, to the decl for A which happens to be
a TEMPLATE_DECL). This seems consistent with the fact that the
parameter of B is a template itself so its argument ought to be
template-name, rather than a template instantiation.
--
Dodji
More information about the Gcc-patches
mailing list