@@ -1170,11 +1170,12 @@ } while (i != size && modCount == expectedModCount) { action.accept((E) elementData[i++]); } // update once at end of iteration to reduce heap write traffic - lastRet = cursor = i; + cursor = i; + lastRet = i - 1; checkForComodification(); } } final void checkForComodification() {