
I don't understand why there are so many implementations of the range_value metafunction. It seems to me that it should always be defined to be: template <class R> struct range_value : boost::iterator_value< typename range_iterator<R>::type >::type {}; What am I missing? -- Dave Abrahams Boost Consulting www.boost-consulting.com

"David Abrahams" <dave@boost-consulting.com> wrote in message news:uu0lkc3x5.fsf@boost-consulting.com... | | I don't understand why there are so many implementations of the | range_value metafunction. It seems to me that it should always be | defined to be: | | template <class R> | struct range_value | : boost::iterator_value< | typename range_iterator<R>::type | >::type | {}; | | What am I missing? dunno. do we dare change it before a release? -Thorsten

Thorsten Ottosen wrote:
"David Abrahams" <dave@boost-consulting.com> wrote in message news:uu0lkc3x5.fsf@boost-consulting.com... | | I don't understand why there are so many implementations of the | range_value metafunction. It seems to me that it should always be | defined to be: | | template <class R> | struct range_value | : boost::iterator_value< | typename range_iterator<R>::type | >::type | {}; | | What am I missing?
dunno.
do we dare change it before a release?
Shouldn't this be: template <class R> struct range_value : boost::iterator_value< typename range_iterator<R>::type > {}; ? (Note absence of trailing ::type.) -- Eric Niebler Boost Consulting www.boost-consulting.com
participants (3)
-
David Abrahams
-
Eric Niebler
-
Thorsten Ottosen