http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51577
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jason at gcc dot gnu.org --- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-01-21 22:53:40 UTC --- the problem exists for any operator, it's not specific to == here's a reduced form using unary operator+ template<typename T> void test( T v ) { +v; } namespace A { struct X { }; } void operator+(A::X) { } int main() { test( A::X() ); }