void operator()( Cont& c, const Cont& c2 ) const { typename Cont::iterator i; typename Cont::const_iterator ci; T* t = new T; i = c.lower_bound( *t ); ci = c2.lower_bound( *t ); i = c.upper_bound( *t ); ci = c2.upper_bound( *t ); delete t; BOOST_DEDUCED_TYPENAME Cont::reverse_iterator ri = c.rbegin(); BOOST_DEDUCED_TYPENAME Cont::const_reverse_iterator cri = c2.rbegin(); BOOST_DEDUCED_TYPENAME Cont::reverse_iterator rv2 = c.rend(); BOOST_DEDUCED_TYPENAME Cont::const_reverse_iterator cvr2 = c2.rend(); cri = c.crbegin(); cri = c.crend(); }