t135.C   [plain text]


// { dg-do compile }
// GROUPS niklas pt friend
template <class T> class C1
{
public:
	void diddle_C2 ();
};

class C2
{
	int data_member; // { dg-error "" }
  friend class C1; // { dg-error "" }
};

class C2 C2_object;

template <class T> void C1<T>::diddle_C2 ()
{
  C2_object.data_member = 99; // { dg-error "" }
}

C1<int> C1_int_object;

void foobar ()
{
  C1_int_object.diddle_C2 ();
}