It makes more sense to access position() if positionValid() returns true.
mentioned in commit 70d3a4d2