/usr/include/boost/range/mutable_iterator.hpp: In instantiation of ‘boost::range_mutable_iterator<math::IntegerVectorRange>’:
/usr/include/boost/mpl/eval_if.hpp:38: instantiated from ‘boost::mpl::eval_if<mpl_::bool_<false>, boost::range_const_iterator<math::IntegerVectorRange>, boost::range_mutable_iterator<math::IntegerVectorRange> >’
/usr/include/boost/foreach.hpp:363: instantiated from ‘boost::foreach_detail_::foreach_iterator<math::IntegerVectorRange, mpl_::bool_<false> >’
prog.cpp:38: instantiated from here
/usr/include/boost/range/mutable_iterator.hpp:37: error: no type named ‘iterator’ in ‘class math::IntegerVectorRange’
prog.cpp: In function ‘T1 fun()’:
prog.cpp:38: error: no matching function for call to ‘begin(const boost::foreach_detail_::auto_any_base&, boost::foreach_detail_::type2type<math::IntegerVectorRange, mpl_::bool_<false> >*, boost::mpl::or_<boost::mpl::and_<boost::mpl::not_<boost::is_array<math::IntegerVectorRange> >, mpl_::bool_<false>, mpl_::bool_<true>, mpl_::bool_<true>, mpl_::bool_<true> >, boost::mpl::and_<boost::mpl::not_<boost::foreach::is_noncopyable<math::IntegerVectorRange> >, boost::foreach::is_lightweight_proxy<math::IntegerVectorRange>, mpl_::bool_<true>, mpl_::bool_<true>, mpl_::bool_<true> >, mpl_::bool_<false>, mpl_::bool_<false>, mpl_::bool_<false> >*)’
prog.cpp:38: error: no matching function for call to ‘end(const boost::foreach_detail_::auto_any_base&, boost::foreach_detail_::type2type<math::IntegerVectorRange, mpl_::bool_<false> >*, boost::mpl::or_<boost::mpl::and_<boost::mpl::not_<boost::is_array<math::IntegerVectorRange> >, mpl_::bool_<false>, mpl_::bool_<true>, mpl_::bool_<true>, mpl_::bool_<true> >, boost::mpl::and_<boost::mpl::not_<boost::foreach::is_noncopyable<math::IntegerVectorRange> >, boost::foreach::is_lightweight_proxy<math::IntegerVectorRange>, mpl_::bool_<true>, mpl_::bool_<true>, mpl_::bool_<true> >, mpl_::bool_<false>, mpl_::bool_<false>, mpl_::bool_<false> >*)’
prog.cpp:38: error: no matching function for call to ‘deref(const boost::foreach_detail_::auto_any_base&, boost::foreach_detail_::type2type<math::IntegerVectorRange, mpl_::bool_<false> >*)’
prog.cpp: In function ‘T1 fun() [with T1 = int]’:
prog.cpp:48: instantiated from here
prog.cpp:38: warning: unused variable ‘v’