You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
struct Base {
protected:
bool operator==(const Base& other) const = default;
};
struct Child : Base {
int i;
bool operator==(const Child& other) const = default;
};
bool b = Child() == Child(); // error: deleted operator== because Base::operator== is inaccessible
CWG asks EWG to determine whether the access check for Base::operator== in the protected base class should succeed when synthesizing Child::operator==. In the status quo, the access check fails because the relevant object expression is actually of type Base.