I wanted to implement Debug overloads for those already existing overloads but then realized that those algos could be generalized. This way we will benefit from the memmove replacement when operating with C array or std::array or std::vector iterators. I might do the same for lexicographical_compare one day. The ChangeLog below is quite huge so I attached it. I wonder if I could use deque::iterator and deque::const_iterator in place of the _Deque_iterator<> to reduce it ? Tested under Linux x86_64 normal and debug modes, ok to commit ? François