http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54948

Manuel López-Ibáñez <manu at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at gcc dot gnu.org

--- Comment #2 from Manuel López-Ibáñez <manu at gcc dot gnu.org> 2013-04-20 
12:03:29 UTC ---
There are several "bugs" in this case. The first one is that we consider that
the type of:

template<typename> struct A

is "struct A< <template-parameter-1-1> >". It would be nicer to print something
like "struct A<typename>" or "struct A<>". Clang never needs to print made up
names.

The second bug is that I think we record T when parsing, but later we drop it.
I wasn't able to find when we drop it. There is a lot going on between the
moment we parse T and the moment we parse {, so it is rather difficult to
figure out. Stepping in the parser is rather frustrating.

I am afraid that the only person that may know what is going or where to look
is Jason. There is lookup_template_class, but by the time we call it, we
already dropped T (or so it seems to me, maybe it is recorded somewhere else).

Reply via email to