This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: forward list patch
- From: Paolo Carlini <paolo dot carlini at oracle dot com>
- To: François Dumont <francois dot cppdevs at free dot fr>
- Cc: libstdc++ at gcc dot gnu dot org
- Date: Sat, 23 Oct 2010 00:20:36 +0200
- Subject: Re: forward list patch
- References: <4CC1FFCE.2070006@free.fr>
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.