diff --git a/include/boost/iterator/filter_iterator.hpp b/include/boost/iterator/filter_iterator.hpp index 29d8176..a91b7e9 100644 --- a/include/boost/iterator/filter_iterator.hpp +++ b/include/boost/iterator/filter_iterator.hpp @@ -46,6 +46,9 @@ class filter_iterator : { friend class iterator_core_access; + template< typename, typename > + friend class filter_iterator; + private: using super_t = detail::filter_iterator_base_t< Predicate, Iterator >; @@ -75,7 +78,7 @@ private: template< typename Pred, typename Iter > storage(Pred&& pred, Iter&& end) : - predicate_base(boost::empty_init_t{}, static_cast< Predicate&& >(pred)), m_end(static_cast< Iterator&& >(end)) + predicate_base(boost::empty_init_t{}, static_cast< Pred&& >(pred)), m_end(static_cast< Iter&& >(end)) { }