https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80979
--- Comment #1 from David Binderman <dcb314 at hotmail dot com> --- Reduced C++ source code: namespace a class address { friend bool operator==(const address &, const address &} bool operator==(const address &, const address &; } class b { a::address address } class h { typedef b c } namespace boost struct B { } namespace i B d; } } using namespace boost : i namespace boost namespace e class f; template < g > void operator==(const , f ; } using e::operator== } h : c from { d == from.address