Given a program as simple as

class A{void func();}
class Bublic A{void func();}
class Cublic B,A{void func();}


// call it
C p;
p.func();

How can a compiler determine which function is called ? Thank you.