Ticket #4707: intrinsics.hpp.patch

File intrinsics.hpp.patch, 1.9 KB (added by olim@…, 12 years ago)

Support for GHS compiler

  • intrinsics.hpp

    Left base folder: C:\Program Files\boost\boost_1_44_0
    Right base folder: N:\ssp\depends\boost
     
    156156#     define BOOST_ALIGNMENT_OF(T) __alignof__(T)
    157157#   endif
    158158
    159159#   define BOOST_HAS_TYPE_TRAITS_INTRINSICS
    160160#endif
    161161
     162#if defined(__ghs__) && (__GHS_VERSION_NUMBER >= 600)
     163#   include <boost/type_traits/is_same.hpp>
     164#   include <boost/type_traits/is_reference.hpp>
     165#   include <boost/type_traits/is_volatile.hpp>
     166
     167#   define BOOST_IS_UNION(T) __is_union(T)
     168#   define BOOST_IS_POD(T) __is_pod(T)
     169#   define BOOST_IS_EMPTY(T) __is_empty(T)
     170#   define BOOST_HAS_TRIVIAL_CONSTRUCTOR(T) __has_trivial_constructor(T)
     171#   define BOOST_HAS_TRIVIAL_COPY(T) (__has_trivial_copy(T) && !is_reference<T>::value)
     172#   define BOOST_HAS_TRIVIAL_ASSIGN(T) __has_trivial_assign(T)
     173#   define BOOST_HAS_TRIVIAL_DESTRUCTOR(T) __has_trivial_destructor(T)
     174#   define BOOST_HAS_NOTHROW_CONSTRUCTOR(T) __has_nothrow_constructor(T)
     175#   define BOOST_HAS_NOTHROW_COPY(T) (__has_nothrow_copy(T) && !is_volatile<T>::value && !is_reference<T>::value)
     176#   define BOOST_HAS_NOTHROW_ASSIGN(T) (__has_nothrow_assign(T) && !is_volatile<T>::value)
     177#   define BOOST_HAS_VIRTUAL_DESTRUCTOR(T) __has_virtual_destructor(T)
     178
     179#   define BOOST_IS_ABSTRACT(T) __is_abstract(T)
     180#   define BOOST_IS_BASE_OF(T,U) (__is_base_of(T,U) && !is_same<T,U>::value)
     181#   define BOOST_IS_CLASS(T) __is_class(T)
     182#   define BOOST_IS_ENUM(T) __is_enum(T)
     183#   define BOOST_IS_POLYMORPHIC(T) __is_polymorphic(T)
     184#   define BOOST_ALIGNMENT_OF(T) __alignof__(T)
     185
     186#   define BOOST_HAS_TYPE_TRAITS_INTRINSICS
     187#endif
     188
    162189# if defined(__CODEGEARC__)
    163190#   include <boost/type_traits/is_same.hpp>
    164191#   include <boost/type_traits/is_reference.hpp>
    165192#   include <boost/type_traits/is_volatile.hpp>
    166193#   include <boost/type_traits/is_void.hpp>
    167194