PR libstdc++/80762 avoid ambiguous __constructible_from<void, void>

Ensure we don't try to instantiate __is_constructible_from<void, void>,
because there are two partial specializations that are equally good
matches.

	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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267056 138bc75d-0d04-0410-961f-82ee72b054a4
5 files changed