I had been using blocked_range a bit, but was getting tired of writing custom functor objects all the time, so I began trying to use boost/foreach and boost/mem_fn, but got compiler errors about lack of iterator, so looked into the header and found blocked_range doesn't have iterators. It has a const_iterator, but not an iterator. Also the const_iterator isn't actually const at all.
So I added to file:blocked_range.h around line:50
//! A range over which to iterate.
/** @ingroup algorithms */
template
class blocked_range {
public:
//! Type of a value
/** Called a const_iterator for sake of algorithms that need to treat a blocked_range
as an STL container. */
typedef Value iterator; //added this here
typedef const Value const_iterator; //fixed this here
This way I can use boost goodness to simplifywritingloops.
Anyways since const_iterator should have been const anyways I guess this should be backwards compatible with most stuff out there.
Any thoughts?