id summary reporter owner description type status milestone component version severity resolution keywords cc 9799 polymorphic_downcast does not support virtual inheritance Camille Gillot No-Maintainer "The following code barks at compilation : {{{#!cpp #include class A { public: virtual ~A(); }; class B : public A {}; class C : public virtual A {}; int main() { A* b = new B; A* c = new C; B* bb = boost::polymorphic_downcast(b); // Fine C* cc = boost::polymorphic_downcast(c); // Error delete b; delete c; return 0; } }}} static_cast cannot handle downcast from or through a virtual base class, dynamic_cast must be used instead. A fix would be to test the case of virtual base class with boost::is_virtual_base_of and dispatch the two cases. Here is a patch doing it." Patches closed To Be Determined utility Boost 1.54.0 Problem wontfix