How hard would it be to assert the pre-condition described in this comment?
For starters, we could "assert m_begin;"
With a little more effort, we could set a "m_movedToGreaterThanKey" flag in moveToGreaterThanKey  and reset the flag in the other APIs that change the state of the index/iteration -- essentially, planting the seeds for a "state machine".