http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54376
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2012-08-25 Ever Confirmed|0 |1 Known to fail| |4.6.3, 4.7.2, 4.8.0 --- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-08-25 19:44:49 UTC --- Reduced: template<class> struct x { template<class T> friend bool operator==(x<T>, x<T>) { return false; } }; int main() { x<int> x1; x<double> x2; x1 == x1; x2 == x2; } r.cc: In instantiation of 'x<double>': r.cc:9:13: instantiated from here r.cc:3:17: error: redefinition of 'template<class T> bool operator==(x<T>, x<T>)' r.cc:3:17: error: 'template<class T> bool operator==(x<T>, x<T>)' previously defined here