Fix a bug with advancement of position in ? macro