On Wed, 3 Sept 2025 at 12:12, Jonathan Wakely <jwak...@redhat.com> wrote:
> > I want to also see following test being added, that explains why we want to 
> > use:
> > std::forward<_Tp>(__p.second);
> > Instead of, seemingly more obvious:
> > std::move(__p).second -> this will produce int& instead of int&&
>
> Good idea. I think I should probably just extend the testcase to cover
> every combination of lvalue/rvalue members, lvalue/rvalue pairs, and
> const/non-const pairs.

If you could, also take a look at similar coverage for assignment
operators and constructors. There was that recent
misguided suggestion to replace forwards with moves; our
implementation uses forward in assignments and constructors,
but surely doesn't hurt to try to make sure the tests for those cover
reference elements.

Reply via email to