c++/4403: [2003-01-11]incorrect class becomes a friend in template
Giovanni Bajo
giovannibajo@libero.it
Wed Apr 30 21:43:00 GMT 2003
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=4403
For easier reference, a minimal snippet showing this is:
--------------------------------
template <typename T>
struct A
{
struct F;
};
template <typename T>
struct B : A<T>
{
friend struct F;
private:
int priv;
};
struct F
{
void func(void)
{
B<int> b;
b.priv = 0;
}
};
--------------------------------
pr4403.cpp: In member function `void F::func()':
pr4403.cpp:13: error: `int B<int>::priv' is private
pr4403.cpp:21: error: within this context
Reconfirmed on any GCC version up to mainline 20030430.
Giovanni Bajo
More information about the Gcc-bugs
mailing list