コンパイラがこれを好まない理由がわかりません。問題の例を次に示します。
class A
{
public:
    virtual void Expand() { }
    virtual void Expand(bool flag) { }
};
class B : public A
{
public:
    virtual void Expand() {
        A::Expand(true);
        Expand(true);
    }
};
これをコンパイルしようとすると、コンパイルは正常に行われますA::Expand(true);が、スコープExpand(true);がない場合は次のコンパイラエラーが発生します。
'B :: Expand':関数は1つの引数を取りません