Merge branch 'develop'

This commit is contained in:
Edward Diener
2017-04-24 12:24:21 -04:00
3 changed files with 14 additions and 2 deletions

View File

@ -84,7 +84,7 @@ namespace iterators {
struct result<This(Iterator)> struct result<This(Iterator)>
{ {
typedef typename typedef typename
remove_reference<typename remove_cv<Iterator>::type>::type remove_cv<typename remove_reference<Iterator>::type>::type
iterator; iterator;
typedef typename iterator_reference<iterator>::type type; typedef typename iterator_reference<iterator>::type type;

View File

@ -58,6 +58,18 @@ int main()
BOOST_TEST(boost::fusion::at_c<1>(*(i + 1)) == "pyonpyon"); BOOST_TEST(boost::fusion::at_c<1>(*(i + 1)) == "pyonpyon");
} }
{
// Trac #12895
boost::zip_iterator<
TUPLE<int*, std::string*>
> i(MAKE_TUPLE(vi.data(), vs.data()));
BOOST_TEST(boost::fusion::at_c<0>(* i ) == 42);
BOOST_TEST(boost::fusion::at_c<1>(* i ) == "kokoro");
BOOST_TEST(boost::fusion::at_c<0>(*(i + 1)) == 72);
BOOST_TEST(boost::fusion::at_c<1>(*(i + 1)) == "pyonpyon");
}
{ {
boost::zip_iterator<iterator_tuple> i1(MAKE_TUPLE(vi.begin(), vs.begin())); boost::zip_iterator<iterator_tuple> i1(MAKE_TUPLE(vi.begin(), vs.begin()));
boost::zip_iterator<iterator_tuple> i2(MAKE_TUPLE(vi.end(), vs.end())); boost::zip_iterator<iterator_tuple> i2(MAKE_TUPLE(vi.end(), vs.end()));

View File

@ -1,6 +1,6 @@
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_HDR_TUPLE) #if !defined(BOOST_NO_CXX11_HDR_TUPLE) && !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
#include <tuple> #include <tuple>
#include <boost/fusion/adapted/std_tuple.hpp> #include <boost/fusion/adapted/std_tuple.hpp>