#include <iostream>
using namespace std;

struct Base1
{
    void Foo(double param)
    {
        cout << "Base1::Foo(double)" << endl;
    }
};

struct Base2
{
    void Foo(int param)
    {
        cout << "Base2::Foo(int)" << endl;
    }
};

struct Derived : public Base1, public Base2
{
};

int main(int argc, char **argv)
{
    Derived d;
    d.Foo(1.2);
    return 1;
}