1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
// Build don't run: // GROUPS passed templates class ostream {}; template <class T> class S; template <class T> void operator<<(ostream&, S<T>) {} template <class T> class S { friend void operator<<<>(ostream&, const S<T>); }; int main() { ostream o; o << S<int>(); }