fix for case where Sequence is const

[SVN r74589]
This commit is contained in:
Joel de Guzman
2011-09-27 11:45:24 +00:00
parent a0db9cc855
commit e08976a68d
2 changed files with 7 additions and 2 deletions

View File

@ -9,6 +9,7 @@
#include <tuple> #include <tuple>
#include <boost/mpl/int.hpp> #include <boost/mpl/int.hpp>
#include <boost/type_traits/remove_const.hpp>
namespace boost { namespace fusion namespace boost { namespace fusion
{ {
@ -23,7 +24,11 @@ namespace boost { namespace fusion
struct size_impl<std_tuple_tag> struct size_impl<std_tuple_tag>
{ {
template <typename Sequence> template <typename Sequence>
struct apply : mpl::int_<std::tuple_size<Sequence>::value> {}; struct apply :
mpl::int_<std::tuple_size<
typename remove_const<Sequence>::type>::value
>
{};
}; };
} }
}} }}

View File

@ -33,7 +33,7 @@ namespace boost { namespace fusion
namespace boost { namespace mpl namespace boost { namespace mpl
{ {
template<typename> template <typename>
struct sequence_tag; struct sequence_tag;
template <typename... Elements> template <typename... Elements>