Add back operator void conversion operators for gcc-4.7

This commit is contained in:
jzmaddock
2016-07-14 19:30:50 +01:00
parent 0e82dcbe11
commit 3ed352297a
2 changed files with 18 additions and 0 deletions

View File

@@ -421,6 +421,9 @@ struct expression<tag, Arg1, void, void, void>
result_type r(*this);
return static_cast<bool>(r);
}
#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800)
BOOST_MP_FORCEINLINE explicit operator void()const {}
#endif
# endif
#else
operator unmentionable_type()const
@@ -484,6 +487,9 @@ struct expression<terminal, Arg1, void, void, void>
result_type r(*this);
return static_cast<bool>(r);
}
#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800)
BOOST_MP_FORCEINLINE explicit operator void()const {}
#endif
# endif
#else
operator unmentionable_type()const
@@ -551,6 +557,9 @@ struct expression<tag, Arg1, Arg2, void, void>
result_type r(*this);
return static_cast<bool>(r);
}
#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800)
BOOST_MP_FORCEINLINE explicit operator void()const {}
#endif
# endif
#else
operator unmentionable_type()const
@@ -629,6 +638,9 @@ struct expression<tag, Arg1, Arg2, Arg3, void>
result_type r(*this);
return static_cast<bool>(r);
}
#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800)
BOOST_MP_FORCEINLINE explicit operator void()const {}
#endif
# endif
#else
operator unmentionable_type()const
@@ -716,6 +728,9 @@ struct expression
result_type r(*this);
return static_cast<bool>(r);
}
#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800)
BOOST_MP_FORCEINLINE explicit operator void()const {}
#endif
# endif
#else
operator unmentionable_type()const

View File

@@ -632,6 +632,9 @@ public:
{
return !is_zero();
}
#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800)
BOOST_MP_FORCEINLINE explicit operator void()const {}
#endif
# endif
#else
typedef bool (self_type::*unmentionable_type)()const;