See the new thread Andrei started entitled "finish function for output ranges". I think this discussion has clearly discovered a shortcoming in the current range design, and Andrei has a proposed solution.