2012/2/16 Jason Merrill <ja...@redhat.com>:
> On 02/16/2012 01:47 PM, Fabien Chêne wrote:
>>
>> +  tree binfo_type = TYPE_MAIN_VARIANT (BINFO_TYPE (binfo));
>
>
> BINFO_TYPE should already be its TYPE_MAIN_VARIANT.  Why isn't it here?
>
>
>> For (2), the lookup was failing because the flag
>> BINFO_DEPENDENT_BASE_P was set. It think it should not be set for this
>> special case, however, I'm not sure I have unset it at the right
>> place.
>
>
> I think we should avoid setting it in the first place, perhaps by changing
> dependent_type_p to dependent_scope_p in xref_basetypes.

Well, where it takes me ages to figure out what goes wrong and to fix
it in the wrong way, it only takes you a few seconds... Never mind ;-)
Your suggestion fixes the problem above with BINFOs as well, thank you !

complete regtest is running... OK to commit if it succeeds ?

gcc/testsuite/ChangeLog

2012-02-16  Fabien Chêne  <fab...@gcc.gnu.org>

        * g++.dg/template/using21.C: New.
        * g++.dg/template/using22.C: Likewise.

gcc/cp/ChangeLog

2012-02-16  Fabien Chêne  <fab...@gcc.gnu.org>

        * decl.c (xref_basetypes): call dependent_scope_p instead of
        dependent_type_p.

-- 
Fabien

Attachment: 52126_2.patch
Description: Binary data

Reply via email to