diff options
Diffstat (limited to 'cutl/details/boost/type_traits/type_with_alignment.hpp')
-rw-r--r-- | cutl/details/boost/type_traits/type_with_alignment.hpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/cutl/details/boost/type_traits/type_with_alignment.hpp b/cutl/details/boost/type_traits/type_with_alignment.hpp index 1fefa45..6545cc1 100644 --- a/cutl/details/boost/type_traits/type_with_alignment.hpp +++ b/cutl/details/boost/type_traits/type_with_alignment.hpp @@ -86,7 +86,7 @@ struct lower_alignment_helper_impl<false> { template <std::size_t target, class TestType> struct apply - : mpl::if_c<(alignment_of<TestType>::value == target), TestType, char> + : public mpl::if_c<(alignment_of<TestType>::value == target), TestType, char> { enum { value = (alignment_of<TestType>::value == target) }; }; @@ -94,7 +94,7 @@ struct lower_alignment_helper_impl<false> template <bool found, std::size_t target, class TestType> struct lower_alignment_helper - : lower_alignment_helper_impl<found>::template apply<target,TestType> + : public lower_alignment_helper_impl<found>::template apply<target,TestType> { }; #else @@ -225,6 +225,8 @@ struct __attribute__((__aligned__(4))) a4 {}; struct __attribute__((__aligned__(8))) a8 {}; struct __attribute__((__aligned__(16))) a16 {}; struct __attribute__((__aligned__(32))) a32 {}; +struct __attribute__((__aligned__(64))) a64 {}; +struct __attribute__((__aligned__(128))) a128 {}; } template<> class type_with_alignment<1> { public: typedef char type; }; @@ -233,6 +235,8 @@ template<> class type_with_alignment<4> { public: typedef align::a4 type; }; template<> class type_with_alignment<8> { public: typedef align::a8 type; }; template<> class type_with_alignment<16> { public: typedef align::a16 type; }; template<> class type_with_alignment<32> { public: typedef align::a32 type; }; +template<> class type_with_alignment<64> { public: typedef align::a64 type; }; +template<> class type_with_alignment<128> { public: typedef align::a128 type; }; namespace detail { BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::cutl_details_boost::align::a2,true) @@ -240,6 +244,8 @@ BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::cutl_details_boost::align::a4,true) BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::cutl_details_boost::align::a8,true) BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::cutl_details_boost::align::a16,true) BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::cutl_details_boost::align::a32,true) +BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::cutl_details_boost::align::a64,true) +BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,::cutl_details_boost::align::a128,true) } #endif #if (defined(BOOST_MSVC) || (defined(BOOST_INTEL) && defined(_MSC_VER))) && _MSC_VER >= 1300 |