> ArgIterator is a special type. It contains a pointer to the stack, so > it > isn't allowed to escape the current method. Otherwise, you'd have a > pointer pointing into the middle of nowhere.
I would guess that it has not so much to do with ArgIterator being a special type, but that in this instance, iterator itself is stack allocated. Frankly, I don't think this requires documentation. We all know that you can't return a stack allocated struct from a function. Fortunately, we now have a compiler that won't let us do this accidentally. -- Steve Johnson 3t Systems