This is the mail archive of the
mailing list for the libstdc++ project.
Re: Attempt to make std::pair piecewise constructor noexcept
- From: Ville Voutilainen <ville dot voutilainen at gmail dot com>
- To: François Dumont <frs dot dumont at gmail dot com>
- Cc: "libstdc++" <libstdc++ at gcc dot gnu dot org>
- Date: Fri, 14 Dec 2018 00:39:10 +0200
- Subject: Re: Attempt to make std::pair piecewise constructor noexcept
- References: <email@example.com>
On Fri, 14 Dec 2018 at 00:14, François Dumont <firstname.lastname@example.org> wrote:
> I had a try to make std::pair piecewise constructor noexcept
> qualified as you'll see in the attached diff. It will help to have more
> move semantic in associative containers.
> But it doesn't work, is_nothrow_constructible<pair<int, int>,
> piecewise_construct_t, tuple<int>, tuple<int>>::value still false.
> Could you let me know before I lose too much time if it is feasible
> or not ? Or at least if I am on the right path.
> Thanks for any help,
std::pair isn't constructible from typename
_Build_index_tuple<sizeof...(_Args1)>::__type, so it's not
nothrow_constructible from it either. is_constructible (and
is_nothrow_constructible) requires public access, and can't detect
your private constructors do.