I'm confused why the following code produces Woverloaded-virtual warning.
class TestVirtual
{
public:
TestVirtual();
virtual void TestMethod(int i);
};
class DerivedTestVirtual : public TestVirtual
{
public:
void TestMethod();
};
Derived class has usual method TestMethod with no parameters - signature differs from similar virtual method of base class. Then why compiler cannot resolve this situation?