On Fri, 28 Aug 2020 at 07:56, Krystian Kuźniarek via Libstdc++
<libstd...@gcc.gnu.org> wrote:
>
> > So then you need to produce a changelog entry by hand.
> I had this problem on some old Ubuntu 18.04. Anyway, here's new ChangeLog:
>
>     libstdc++-v3/ChangeLog:
>
>             * include/std/variant: Fix -Wignored-qualifiers
>             in system headers.
>
>
> >That doesn't test this header at all.
> It does but indirectly. What I meant by manual test was:
> ${GCC_GIT} -E contains_only_stdcpp_include.cpp > preprocessed.cpp
> ${GCC_GIT} -Wall -Wextra -pedantic -fsyntax-only preprocessed.cpp
> By manipulating GCC_GIT variable to trunk GCC and patched GCC, I checked if
> the warning is gone.
>
> >What about the libstdc++ testsuite?
> I hope you mean calling make bootstrap and make check. If that's ok, I
> confirm it works on Manjaro and Ubuntu 18.04 with gcc10 and gcc8
> respectively.
>
> >I don't remember exactly why I put it there, but I seem to recall it
> >was necessary.
> I don't know your reasons but I can only tell that this patch seems to
> compile and work just fine.

I see new test failures with that change:

include/variant:1039: error: invalid conversion from
'std::enable_if_t<true, const void> (*)(test02()::Visitor&&,
std::variant<int, double>&)' {aka 'void (*)(test02()::Visitor&&,
std::variant<int, double>&)'} to
'std::__detail::__variant::_Multi_array<co
nst void (*)(test02()::Visitor&&, std::variant<int,
double>&)>::__untag_result<const void (*)(test02()::Visitor&&,
std::variant<int, double>&)>::element_type' {aka 'const void
(*)(test02()::Visitor&&, std::variant<int, double>&)'} [-fpermissive]
UNRESOLVED: 20_util/variant/visit_r.cc compilation failed to produce executable


So I still think it's there for a reason.

Reply via email to