This is the mail archive of the
mailing list for the libstdc++ project.
Re: [PATCH] PR libstdc++/80762 avoid ambiguous __constructible_from<void, void>
- From: Christophe Lyon <christophe dot lyon at linaro dot org>
- To: Jonathan Wakely <jwakely at redhat dot com>
- Cc: libstdc++ at gcc dot gnu dot org, gcc Patches <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 13 Dec 2018 08:56:08 +0100
- Subject: Re: [PATCH] PR libstdc++/80762 avoid ambiguous __constructible_from<void, void>
- References: <20181212161330.GA2560@redhat.com>
On Wed, 12 Dec 2018 at 17:13, Jonathan Wakely <firstname.lastname@example.org> wrote:
> Ensure we don't try to instantiate __is_constructible_from<void, void>,
> because there are two partial specializations that are equally good
> PR libstdc++/80762
> * include/bits/fs_path.h (path::_Path): Use remove_cv_t and is_void.
> * include/experimental/bits/fs_path.h (path::_Path): Likewise.
> * testsuite/27_io/filesystem/path/construct/80762.cc: New test.
> * testsuite/experimental/filesystem/path/construct/80762.cc: New test.
One of the new tests fails on bare-metal/newlib targets (aarch64-elf/arm-eabi):
FAIL: experimental/filesystem/path/construct/80762.cc (test for excess errors)
fatal error: experimental/filesystem: No such file or directory
I think there was a similar issue recently, but I don't remember how
you fixed it?
> Tested x86_64-linux (and manually verified it fixes the clang errors).
> Committed to trunk. This is worth backporting too, I think.