diff --git a/include/boost/type_traits/is_virtual_base_of.hpp b/include/boost/type_traits/is_virtual_base_of.hpp index 5dc93c4..e3dd441 100644 --- a/include/boost/type_traits/is_virtual_base_of.hpp +++ b/include/boost/type_traits/is_virtual_base_of.hpp @@ -36,6 +36,7 @@ struct is_virtual_base_of_impl template struct is_virtual_base_of_impl { +#ifdef __BORLANDC__ struct X : public virtual Derived, public virtual Base { X(); @@ -50,6 +51,22 @@ struct is_virtual_base_of_impl Y& operator=(const Y&); ~Y(); }; +#else + struct X : Derived, virtual Base + { + X(); + X(const X&); + X& operator=(const X&); + ~X(); + }; + struct Y : Derived + { + Y(); + Y(const Y&); + Y& operator=(const Y&); + ~Y(); + }; +#endif BOOST_STATIC_CONSTANT(bool, value = (sizeof(X)==sizeof(Y))); };