https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92878

--- Comment #7 from Ville Voutilainen <ville.voutilainen at gmail dot com> ---
__is_constructible is incorrectly false for such an aggregate:

struct aggressive_aggregate
{
    int a;
    int b;
};

int main()
{
    static_assert(__is_constructible(aggressive_aggregate, int, int));
}

Do you want a new bug report, or should this be handled as a follow-up on this
one?

By the way, this is exactly why I asked to add a libstdc++ test for this, for
make_shared, make_unique and allocator::construct (and construct_at). When I
started writing that test, I semi-immediately ran into make_shared still not
working, because the underlying utilities it uses check constructibility, and
get a wrong answer.

Reply via email to