1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
// { dg-do assemble } // GROUPS passed old-abort class foo { public: virtual foo &operator <<(foo &(foo::*)(foo &)); }; foo &foo::operator<<(foo &(foo::*manip)(foo &)) { (this->*manip)(*this); return *this; }