1 // { dg-do compile } 2 // { dg-options "-fsanitize=null -fvtable-verify=std" } 3 // { dg-skip-if "" { *-*-* } { "-flto" } { "" } } 4 5 template < typename T > struct A 6 { 7 T foo (); 8 }; 9 template < typename T > struct C: virtual public A < T > 10 { 11 C & operator<< (C & (C &)); 12 }; 13 template < typename T > endl(C<int> & c)14C < T > &endl (C < int > &c) 15 { 16 c.foo (); 17 return c; 18 } 19 C < int > cout; 20 void fn()21fn () 22 { 23 cout << endl; 24 } 25