// { dg-do compile } | |
// { dg-options "-fsanitize=null -fvtable-verify=std" } | |
// { dg-skip-if "" { *-*-* } { "-flto" } { "" } } | |
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; | |
} |