On 10/22/2010 11:19 PM, François Dumont wrote:
Hi
While working on debug mode contention issue I discovered some
bugs that I prefer to submit first. Here is a first patch for the
forward_list. It fixes the move constructor that was missing the move
of safe iterators and introduce a special _M_swap implementation that
do not swap the before begin iterator that cannot move from a
forward_list instance to an other.
Gosh, the new _M_swap_aux is *huge*, certainly we want it out of line.
Anyway, could you please provide a bit of rationale about it? I have
some trouble believing we really need something such complex, so special
to forward_list. And now I see even __scoped_lock in<forward_list>
itself, again something that does not happen for all the other
containers. I think we should give these issues more thought.
Thanks,
Paolo.