Boost logo

Boost Users :

Subject: [Boost-users] [MPL] Fold a vector of pairs
From: Peter Nyssen (peter_at_[hidden])
Date: 2012-03-14 04:25:04


Thanks for replying Jeff.

I did try without the ::type's as shown below, but this fails to compile
as well.

Kind regards,
Peter

//-------------------------------------

#include <boost/mpl/if.hpp>
#include <boost/mpl/int.hpp>
#include <boost/mpl/fold.hpp>
#include <boost/mpl/pair.hpp>
#include <boost/mpl/push_back.hpp>
#include <boost/mpl/vector.hpp>

namespace mpl = boost::mpl;

struct tag1 {};
struct tag2 {};

template <typename T>
struct is_tag1 : boost::false_type {};

template <>
struct is_tag1<tag1> : boost::true_type {};

int main()
{
    typedef mpl::vector<
        mpl::pair<tag1, mpl::int_<1> >,
        mpl::pair<tag2, mpl::int_<2> >,
        mpl::pair<tag1, mpl::int_<3> >
> initial_vector;

    typedef typename mpl::fold<
        initial_vector,
        mpl::pair<mpl::vector<>, mpl::vector<> >,
        mpl::if_<
            is_tag1<mpl::first<mpl::_2> >,
            mpl::push_back<
                mpl::first<mpl::_1>,
                mpl::second<mpl::_2>
>,
            mpl::push_back<
                mpl::second<mpl::_1>,
                mpl::second<mpl::_2>
>
>
>::type sorted_pair;

    return 0;
}

//-------------------------------------

$ g++4 -Wall -I ../boost/ -o test test.cpp
test.cpp: In function 'int main()':
test.cpp:28: error: using 'typename' outside of template
../boost/boost/mpl/pair.hpp: At global scope:
../boost/boost/mpl/pair.hpp: In instantiation of
'boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >':
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from 'const bool
boost::mpl::aux::has_type<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::bool_<true> >::value'
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from
'boost::mpl::aux::has_type<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::bool_<true> >'
../boost/boost/mpl/aux_/preprocessed/gcc/quote.hpp:39: instantiated from
'boost::mpl::quote1<boost::mpl::second,
mpl_::void_>::apply<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:39: instantiated
from 'boost::mpl::apply_wrap1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:144: instantiated from
'boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >::apply<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:80: instantiated
from
'boost::mpl::apply_wrap5<boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<1> >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:160: instantiated from
'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<1> >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:207: instantiated from
'boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >::apply<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:80: instantiated
from
'boost::mpl::apply_wrap5<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:223: instantiated from
'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:508: instantiated from
'boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > > >::apply<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:49: instantiated
from
'boost::mpl::apply_wrap2<boost::mpl::protect<boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > > >, 0>, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> > >'
../boost/boost/mpl/aux_/preprocessed/gcc/apply.hpp:73: instantiated from
'boost::mpl::apply2<boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2>
> >, boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> > >'
../boost/boost/mpl/aux_/preprocessed/gcc/fold_impl.hpp:89: instantiated
from 'boost::mpl::aux::fold_impl<3,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 0l>,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 3l>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
../boost/boost/mpl/fold.hpp:39: instantiated from
'boost::mpl::fold<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
test.cpp:42: instantiated from here
../boost/boost/mpl/pair.hpp:56: error: no type named 'second' in 'struct
boost::mpl::v_item<mpl_::int_<1>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 0>'
../boost/boost/mpl/push_back.hpp: In instantiation of
'boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >':
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from 'const bool
boost::mpl::aux::has_type<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, mpl_::bool_<true> >::value'
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from
'boost::mpl::aux::has_type<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, mpl_::bool_<true> >'
../boost/boost/mpl/aux_/preprocessed/gcc/quote.hpp:56: instantiated from
'boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>::apply<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:49: instantiated
from 'boost::mpl::apply_wrap2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:207: instantiated from
'boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >::apply<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:80: instantiated
from
'boost::mpl::apply_wrap5<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:223: instantiated from
'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:508: instantiated from
'boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > > >::apply<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> >, mpl_::na, mpl_::na,
mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:49: instantiated
from
'boost::mpl::apply_wrap2<boost::mpl::protect<boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > > >, 0>, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> > >'
../boost/boost/mpl/aux_/preprocessed/gcc/apply.hpp:73: instantiated from
'boost::mpl::apply2<boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2>
> >, boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > >, boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0>, boost::mpl::pair<tag2, mpl_::int_<2> > >'
../boost/boost/mpl/aux_/preprocessed/gcc/fold_impl.hpp:89: instantiated
from 'boost::mpl::aux::fold_impl<3,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 0l>,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 3l>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
../boost/boost/mpl/fold.hpp:39: instantiated from
'boost::mpl::fold<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
test.cpp:42: instantiated from here
../boost/boost/mpl/push_back.hpp:32: error: no class template named
'apply' in 'struct
boost::mpl::push_back_impl<boost::mpl::non_sequence_tag>'
../boost/boost/mpl/pair.hpp: In instantiation of
'boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >':
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from 'const bool
boost::mpl::aux::has_type<boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >, mpl_::bool_<true> >::value'
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from
'boost::mpl::aux::has_type<boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >, mpl_::bool_<true> >'
../boost/boost/mpl/aux_/preprocessed/gcc/quote.hpp:39: instantiated from
'boost::mpl::quote1<boost::mpl::first,
mpl_::void_>::apply<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:39: instantiated
from 'boost::mpl::apply_wrap1<boost::mpl::quote1<boost::mpl::first,
mpl_::void_>,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:144: instantiated from
'boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1>
>::apply<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:80: instantiated
from
'boost::mpl::apply_wrap5<boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:160: instantiated from
'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:207: instantiated from
'boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> >
>::apply<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:80: instantiated
from
'boost::mpl::apply_wrap5<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:223: instantiated from
'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:508: instantiated from
'boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >
>::apply<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:49: instantiated
from
'boost::mpl::apply_wrap2<boost::mpl::protect<boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > > >, 0>,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >
>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply.hpp:73: instantiated from
'boost::mpl::apply2<boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2>
> >, boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >
>'
../boost/boost/mpl/aux_/preprocessed/gcc/fold_impl.hpp:91: instantiated
from 'boost::mpl::aux::fold_impl<3,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 0l>,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 3l>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
../boost/boost/mpl/fold.hpp:39: instantiated from
'boost::mpl::fold<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
test.cpp:42: instantiated from here
../boost/boost/mpl/pair.hpp:43: error: no type named 'first' in 'struct
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >'
../boost/boost/mpl/push_back.hpp: In instantiation of
'boost::mpl::push_back<boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >, mpl_::int_<3> >':
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from 'const bool
boost::mpl::aux::has_type<boost::mpl::push_back<boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >, mpl_::int_<3> >, mpl_::bool_<true>
>::value'
../boost/boost/mpl/aux_/has_type.hpp:20: instantiated from
'boost::mpl::aux::has_type<boost::mpl::push_back<boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >, mpl_::int_<3> >, mpl_::bool_<true> >'
../boost/boost/mpl/aux_/preprocessed/gcc/quote.hpp:56: instantiated from
'boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>::apply<boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >, mpl_::int_<3> >'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:49: instantiated
from 'boost::mpl::apply_wrap2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>,
boost::mpl::first<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> > >, mpl_::int_<3> >'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:207: instantiated from
'boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> >
>::apply<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:80: instantiated
from
'boost::mpl::apply_wrap5<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:223: instantiated from
'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first,
mpl_::void_>, mpl_::arg<1> >,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/bind.hpp:508: instantiated from
'boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >
>::apply<boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >,
mpl_::na, mpl_::na, mpl_::na>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:49: instantiated
from
'boost::mpl::apply_wrap2<boost::mpl::protect<boost::mpl::bind3<boost::mpl::quote3<boost::mpl::if_,
mpl_::void_>, boost::mpl::bind1<boost::mpl::quote1<is_tag1, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::first, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > >,
boost::mpl::bind2<boost::mpl::quote2<boost::mpl::push_back, mpl_::void_>,
boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second, mpl_::void_>,
mpl_::arg<1> >, boost::mpl::bind1<boost::mpl::quote1<boost::mpl::second,
mpl_::void_>, mpl_::arg<2> > > >, 0>,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >
>'
../boost/boost/mpl/aux_/preprocessed/gcc/apply.hpp:73: instantiated from
'boost::mpl::apply2<boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2>
> >, boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > >,
boost::mpl::push_back<boost::mpl::second<boost::mpl::v_item<mpl_::int_<1>,
boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na>, 0> >, mpl_::int_<2> >, boost::mpl::pair<tag1, mpl_::int_<3> >
>'
../boost/boost/mpl/aux_/preprocessed/gcc/fold_impl.hpp:91: instantiated
from 'boost::mpl::aux::fold_impl<3,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 0l>,
boost::mpl::v_iter<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, 3l>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
../boost/boost/mpl/fold.hpp:39: instantiated from
'boost::mpl::fold<boost::mpl::vector<boost::mpl::pair<tag1, mpl_::int_<1>
>, boost::mpl::pair<tag2, mpl_::int_<2> >, boost::mpl::pair<tag1,
mpl_::int_<3> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>,
boost::mpl::pair<boost::mpl::vector<mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na>, boost::mpl::vector<mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na,
mpl_::na, mpl_::na, mpl_::na, mpl_::na> >,
boost::mpl::if_<is_tag1<boost::mpl::first<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::first<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > >,
boost::mpl::push_back<boost::mpl::second<mpl_::arg<1> >,
boost::mpl::second<mpl_::arg<2> > > > >'
test.cpp:42: instantiated from here
../boost/boost/mpl/push_back.hpp:32: error: no class template named
'apply' in 'struct
boost::mpl::push_back_impl<boost::mpl::non_sequence_tag>'


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net