"std::allocator_traits<std::allocator<T>>::propagate_on_container_move_assignment::value" is specified as "false", according to ([default.allocator]) and ([allocator.traits.types]). However, according to ([container.requirements.general]), this specification leads to the unneeded requirements (MoveInsertable and MoveAssignable of the value type) on the move assignment operator of containers with the default allocator.
Proposed resolution:
Either of the following two changes;
Pablo prefers the first resolution.