This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: Remove algo logic duplication Round 3
- From: François Dumont <frs dot dumont at gmail dot com>
- To: libstdc++ at gcc dot gnu dot org
- Date: Tue, 24 Sep 2013 22:34:14 +0200
- Subject: Re: Remove algo logic duplication Round 3
- Authentication-results: sourceware.org; auth=none
- References: <52409F6F dot 7040609 at gmail dot com> <5240A4F3 dot 7000504 at oracle dot com>
On 09/23/2013 10:30 PM, Paolo Carlini wrote:
On 9/23/13 3:07 PM, François Dumont wrote:
Ok, you almost convinced me. Let's make sure Marc and the other
interested people have a further look at this for a few days and then
let's go ahead. I have one minor doubt: if I'm not misreading the
diff, I'm seeing _GLIBCXX_STD_A uses going away completely
(is_permutation?) and that seems suspect: can you please review those
and make sure everything is fine? In particular you should test
check-parallel. That code isn't really up to the C++11 requirements,
but not regressing should be very easy.
The removed ones are coming from the fact that I am now reusing an algo
logic that is outside algo namespace so always in std namespace.
However running check-parallel did reveal that I miss some
_GLIBCXX_STD_A on __mismatch calls. But if you run it on your side you
will see that it is already broken for 2 other reasons. There are
internal calls to std::equal rather than _GLIBCXX_STD_A::equal and
parallel mode is missing C++11 mismatch overloads. I think I will fix
those also with this patch, simply forwarding to normal mismatch from
parallel mode for the missing parts.
I will commit in a couple of days once I have run all tests.
François