Bug#249691: gcc-3.4: false compiler error (templated base, templated child, private member)
Jay Berkenbilt <ejb@ql.org> writes:
>> This is an intended consequence of the new 3.4 C++ parser. From
>> http://gcc.gnu.org/gcc-3.4/changes.html
>>
>> "In a template definition, unqualified names will no longer find
>> members of a dependent base"
>>
>> You need to refer to "this->f" rather than the unqualified "f".
>
> Okay, thanks. I'll take your word for it that this is correct. Is
> there something in the spec that you could perhaps point me to that
> shows that this to be the correct behavior?
I think it's 14.6/8
"When looking for the declaration of a name used in a template
definition, the usual lookup rules (3.4.1, 3.4.2) are used for
nondependent names"
--
Philip Martin
Reply to: