C++ ne peut pas convertir à partir d'Une base de dérivés de type B, par l'entremise de base virtuelle d'Un

J'ai trois classes:

class A {};

class B : virtual public A {};
class C : virtual public A {};

class D: public B, public C {};

De tenter une statique de la fonte de A* B* j'obtiens l'erreur ci-dessous:

cannot convert from base A to derived type B via virtual base A