missing ::type in range based partition_point