// { dg-do assemble } // GROUPS passed overloading enum bar {}; void operator+ (int, int);// { dg-error "" } .* void operator+ (bar&, int); template void operator+ (int b, T& t) { return b; } void operator+ (int, bar&); template class foo { public: friend void operator+ <> (int, T&); }; class baz; class foo; class foo;