[cfe-dev] std::vector insert type requirements

Paweł Sikora via cfe-dev cfe-dev at lists.llvm.org
Tue Jul 3 04:37:00 PDT 2018


On 03.07.2018 13:10, Nikita Alekseev via cfe-dev wrote:

> Hello everyone, I hope this mailing list is the right place to ask about
> this. When I try to compile this particular code
> sample https://godbolt.org/g/J7cgbV I get an error, that A must have a
> copy assignment operator. However when reading the documentation
> at https://en.cppreference.com/w/cpp/container/vector/insert I do not
> see any such requirements for this particular overload of insert. It
> does mention that T must be moveAssignable and MoveInsertable if
> Iterator is not ForwardIterator. Even if I define move assignment
> operator it still requires copy assignment.
> 
> I have tested it on Clang 4, Clang 6, GCC 8.1 and get the same error.
> MSVC 2017 compiles when move assignment is present. It would be great if
> someone could explain this behavior.

hi,
please look at:
https://en.cppreference.com/w/cpp/iterator/make_move_iterator


More information about the cfe-dev mailing list