The derived class has an implicitly-declared copy-assignment operator, which hides the one declared in the base class. You can use using
to bring it into scope:
struct EqualTestDerived : public EqualTestBase
{
EqualTestDerived(int one) : EqualTestBase(one) {}
using EqualTestBase::operator=;
};