Why remove_copy_if returns an empty vector?