In the New Iterator Concepts standard proposal, I am not able to decipher any useful difference between a Single Pass Iterator and a Forward Traversal Iterator.
Does the "Assertion/Note" for the "++r" row in the Forward Traversal table imply that Forward Traversal Iterators are copyable, whereas Single Pass Iterators are not?
Additionally, why does the additional ability to default-construct make an iterator model Forward Traversal? What's the rationale?