https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105702

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Although it's possible this could be trying to define B::operator= or some
other member function, we should assume from the return type and parameter type
that it's A::operator=, which was declared and has not been defined yet.

If we want to avoid bad fix-its, we could limit it to cases where all those
clues are present: an invalid non-member operator= is defined where the return
type is X& and the parameter type is either const X& or X&&, and the body of X
declares (but does not define) an assignment op with exactly that signature.

Reply via email to