http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59437

--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Slightly reduced:

template < typename T > struct A
{
  T foo ();
};
template < typename T > struct C: virtual public A < T >
{
  C & operator<< (C & (C &));
};
template < typename T >
C < T > &endl (C < int > &c)
{
  c.foo ();
  return c;
}
C < int > cout;
void
fn ()
{
  cout << endl;
}

Reply via email to