From: Peter Dimov (pdimov_at_[hidden])
Date: 2004-02-16 08:45:57


Gabriel Dos Reis wrote:
> "Giovanni Bajo" <giovannibajo_at_[hidden]> writes:
>
>> Gennaro Prota wrote:
>>
>>> Do you know why? Is he proposing some change in the CWG?
>>
>> I guess it's just a consequence of the GCC bugreport, and Gaby
>> raising the issue with the CWG.
>
> Yes, that is the case. But the issues are slightly different.
> A long time ago, the committee decided, after debate, that member
> names
> hide enclosing template-parameters. The fact that names from base
> classes can hide template-parameters too comes as a -logical-
> consequence from that general rule and the principle that scopes
> nests.

This however runs contrary to the principle that I, as a user, should be
able to explicitly disambiguate; since I can write a qualified name for a
class member but not for a template parameter, it naturally follows that
template parameters should hide class members and not vice versa.