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,,