[PATCH] libstdc++: remove an ignored qualifier on function return type
Krystian Kuźniarek
krystian.kuzniarek@gmail.com
Fri Aug 28 07:16:41 GMT 2020
Actually ChangeLog also uses tabs, so it should be:
libstdc++-v3/ChangeLog:
* include/std/variant: Fix -Wignored-qualifiers
in system headers.
On Fri, 28 Aug 2020 at 08:55, Krystian Kuźniarek <
krystian.kuzniarek@gmail.com> 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.
>
> On Mon, 24 Aug 2020 at 13:38, Jonathan Wakely <jwakely@redhat.com> wrote:
>
>> On 24/08/20 13:26 +0200, Krystian Kuźniarek via Libstdc++ wrote:
>> >Hi,
>> >
>> >First of all, sorry, I must have sent it as quoted-printable so spaces
>> and
>> >tabs are preserved.
>> >
>> >A description of the problem/bug and how your patch addresses it:
>> >I've got a small patch for -Wignored-qualifiers in system headers.
>> >
>> >Testcases:
>> >N/A, it's only a warning.
>> >
>> >ChangeLog:
>> >Sorry, contrib/mklog.py didn't quite work for me.
>> >For some reason after instruction in line 129: "diff = PatchSet(data)" my
>> >"diff" variable is always empty.
>>
>> So then you need to produce a changelog entry by hand.
>>
>> >Bootstrapping and testing:
>> >Tested that manually by recompling GCC, unfolding all headers with
>> >`#include <stdc++.h>` and compiling what's been included by it.
>>
>> That doesn't test this header at all.
>>
>> What about the libstdc++ testsuite?
>>
>> >The patch itself:
>> >
>> >diff --git a/libstdc++-v3/include/std/variant
>> b/libstdc++-v3/include/std/variant
>> >index eb3d6779205..e8fcb57a401 100644
>> >--- a/libstdc++-v3/include/std/variant
>> >+++ b/libstdc++-v3/include/std/variant
>> >@@ -808,7 +808,7 @@ namespace __variant
>> > { using element_type = _Tp; };
>> >
>> > template <typename... _Args>
>> >- struct __untag_result<const void(*)(_Args...)>
>> >+ struct __untag_result<void(*)(_Args...)>
>>
>> I don't remember exactly why I put it there, but I seem to recall it
>> was necessary.
>>
>>
>> > : false_type
>> > { using element_type = void(*)(_Args...); };
>> >
>> >
>> >
>> >Best regards,
>> >Krystian
>> >
>>
>>
More information about the Libstdc++
mailing list