2 // Bug: member operator shadows global template in tsubst.
6 template <class TP> class smanip;
9 ostream& operator<<(ostream& o, const smanip<TP>& m);
11 template <class TP> class smanip {
13 friend ostream& operator<< <>(ostream &o, const smanip<TP>&m);
17 ostream& operator<<(ostream& o, const smanip<TP>& m)
23 X operator<<(int); // commenting out this line makes it work!
24 void print(ostream& os);
27 void X::print(ostream& os)
30 os << smd; // { dg-bogus "" }