X-Git-Url: https://git.donarmstrong.com/?p=rsem.git;a=blobdiff_plain;f=boost%2Ftype_traits%2Fis_virtual_base_of.hpp;h=f57cb618763c89ca0c313d0a4ef7f7dcc9a0b84f;hp=30b34f6ccbde239d27e181c593098fe4c97da08f;hb=2d71eb92104693ca9baa5a2e1c23eeca776d8fd3;hpb=da57529b92adbb7ae74a89861cb39fb35ac7c62d diff --git a/boost/type_traits/is_virtual_base_of.hpp b/boost/type_traits/is_virtual_base_of.hpp index 30b34f6..f57cb61 100644 --- a/boost/type_traits/is_virtual_base_of.hpp +++ b/boost/type_traits/is_virtual_base_of.hpp @@ -22,8 +22,8 @@ namespace detail { #ifdef BOOST_MSVC #pragma warning( push ) -#pragma warning( disable : 4584 ) -#elif defined __GNUC__ +#pragma warning( disable : 4584 4250) +#elif defined(__GNUC__) && (__GNUC__ >= 4) #pragma GCC system_header #endif @@ -37,37 +37,37 @@ template struct is_virtual_base_of_impl { #ifdef __BORLANDC__ - struct X : public virtual Derived, public virtual Base + struct boost_type_traits_internal_struct_X : public virtual Derived, public virtual Base { - X(); - X(const X&); - X& operator=(const X&); - ~X()throw(); + boost_type_traits_internal_struct_X(); + boost_type_traits_internal_struct_X(const boost_type_traits_internal_struct_X&); + boost_type_traits_internal_struct_X& operator=(const boost_type_traits_internal_struct_X&); + ~boost_type_traits_internal_struct_X()throw(); }; - struct Y : public virtual Derived + struct boost_type_traits_internal_struct_Y : public virtual Derived { - Y(); - Y(const Y&); - Y& operator=(const Y&); - ~Y()throw(); + boost_type_traits_internal_struct_Y(); + boost_type_traits_internal_struct_Y(const boost_type_traits_internal_struct_Y&); + boost_type_traits_internal_struct_Y& operator=(const boost_type_traits_internal_struct_Y&); + ~boost_type_traits_internal_struct_Y()throw(); }; #else - struct X : Derived, virtual Base + struct boost_type_traits_internal_struct_X : public Derived, virtual Base { - X(); - X(const X&); - X& operator=(const X&); - ~X()throw(); + boost_type_traits_internal_struct_X(); + boost_type_traits_internal_struct_X(const boost_type_traits_internal_struct_X&); + boost_type_traits_internal_struct_X& operator=(const boost_type_traits_internal_struct_X&); + ~boost_type_traits_internal_struct_X()throw(); }; - struct Y : Derived + struct boost_type_traits_internal_struct_Y : public Derived { - Y(); - Y(const Y&); - Y& operator=(const Y&); - ~Y()throw(); + boost_type_traits_internal_struct_Y(); + boost_type_traits_internal_struct_Y(const boost_type_traits_internal_struct_Y&); + boost_type_traits_internal_struct_Y& operator=(const boost_type_traits_internal_struct_Y&); + ~boost_type_traits_internal_struct_Y()throw(); }; #endif - BOOST_STATIC_CONSTANT(bool, value = (sizeof(X)==sizeof(Y))); + BOOST_STATIC_CONSTANT(bool, value = (sizeof(boost_type_traits_internal_struct_X)==sizeof(boost_type_traits_internal_struct_Y))); }; template