Just out of curiosity, how could `i` not be incremented if function was called?