Что будет выведено в результате выполнения:

#include <iostream> 
using namespace std; 
 
struct A 
{ 
    void func(float val) 
    { 
        cout << "A::func "; 
    } 
}; 
 
struct B: A 
{ 
    void func(int val) 
    { 
        cout << "B::func "; 
    } 
}; 
 
int main() 
{ 
    B b; 
    b.func(10); 
    b.func(10.5); 
 
    static_cast<A*>(&b)->func(10); 
    static_cast<A*>(&b)->func(10.5); 
 
    cout << endl; 
} 
Ошибка при компиляции
B::func B::func A::func A::func
B::func A::func A::func A::func
B::func A::func B::func A::func
B::func B::func B::func A::func