Salut Dodji, 2012/3/12 Dodji Seketeli <do...@seketeli.org>: [...] >> Index: gcc/cp/decl.c >> =================================================================== >> --- gcc/cp/decl.c (revision 184891) >> +++ gcc/cp/decl.c (working copy) >> @@ -8686,6 +8686,9 @@ grokdeclarator (const cp_declarator *dec >> type = NULL_TREE; >> type_was_error_mark_node = true; >> } >> + >> + type = strip_using_decl (type); >> + > > I am a little bit curious as to why this change is necessary. It seems > to me that the test case of your patch would pass even without this > change, wouldn't it?
Yes, this testcase would pass, but an existing testcase wouldn't. I don't remeber which one, but I think it was related to using declarations that refer to a typedef. struct A { typedef int T; }; stuct B : A { using B::T; }; -- Fabien