You are not missing anything at all. The const overload should be there and will always be there in Boost.Range. Sorry for any confusion and wasted time, Neil Groves