diff options
Diffstat (limited to 'boost/fusion/sequence/convert.hpp')
-rw-r--r-- | boost/fusion/sequence/convert.hpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/boost/fusion/sequence/convert.hpp b/boost/fusion/sequence/convert.hpp index b367714ca2..534d991a28 100644 --- a/boost/fusion/sequence/convert.hpp +++ b/boost/fusion/sequence/convert.hpp @@ -8,6 +8,14 @@ #define FUSION_CONVERT_10022005_1442 #include <boost/fusion/support/config.hpp> +#if BOOST_WORKAROUND(BOOST_GCC, < 30500) +#include <boost/core/enable_if.hpp> +#include <boost/type_traits/is_const.hpp> +#define BOOST_FUSION_WA_GCC34(type1, type2) \ + boost::lazy_disable_if<boost::is_const<Sequence>, type1, type2> +#else +#define BOOST_FUSION_WA_GCC34(type1, type2) type1, type2 +#endif namespace boost { namespace fusion { @@ -32,7 +40,7 @@ namespace boost { namespace fusion template <typename Tag, typename Sequence> BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED - inline typename result_of::convert<Tag, Sequence>::type + inline typename BOOST_FUSION_WA_GCC34(result_of::convert<Tag, Sequence>)::type convert(Sequence& seq) { typedef typename result_of::convert<Tag, Sequence>::gen gen; @@ -49,4 +57,5 @@ namespace boost { namespace fusion } }} +#undef BOOST_FUSION_WA_GCC34 #endif |