prev_mark() must always point to the last inserted mark