On Mon, 12 May 2025 at 21:30, Jonathan Wakely <jwakely....@gmail.com> wrote:
>
> On Mon, 12 May 2025 at 16:13, Jason Merrill <ja...@redhat.com> wrote:
> >
> > On 5/9/25 1:31 PM, Jonathan Wakely wrote:
> > > On Fri, 9 May 2025 at 18:13, Jonathan Wakely <jwak...@redhat.com> wrote:
> > >>
> > >> On Fri, 9 May 2025 at 11:19, Jonathan Wakely <jwak...@redhat.com> wrote:
> > >>>
> > >>> On Thu, 8 May 2025 at 20:56, Jason Merrill <ja...@redhat.com> wrote:
> > >>>>
> > >>>> Tested x86_64-pc-linux-gnu.  Does this make sense for trunk?
> > >>>
> > >>> Yes, it looks useful. I'm going to test it with my "very -std and -m32
> > >>> and old-string ABI" test settings to be sure it doesn't cause any
> > >>> problems.
> > >>
> > >> There are a few failures when using GLIBCXX_TESTSUITE_STDS=20 to run
> > >> tests as C++20 or later:
> > >>
> > >> FAIL: experimental/net/internet/resolver/ops/lookup.cc  -std=gnu++23
> > >> (test for excess errors)
> > >> Excess errors:
> > >> /tmp/build/x86_64-pc-linux-gnu/libstdc++-v3/include/experimental/internet:2100:
> > >> warning: offset of
> > >> 'std::experimental::net::v1::ip::basic_resolver<std::experimental::net::v1::ip::tcp>::_M_ctx'
> > >> for '-std=c++20' and up changes in '-fabi-version=21' (GCC 16) [-Wabi]
> > >
> > > We have code like this in the networking TS headers:
> > >
> > > struct Base {
> > > protected:
> > > Base() = default;
> > > ~Base() = default;
> > > };
> > >
> > > struct Derived : Base {
> > > void* ptr;
> > > };
> > >
> > > Is the warning wrong?
> >
> > Hmm, it seems to be: sizeof(Derived) isn't affected by -std=c++20 before
> > the fix, I guess the warning doesn't handle empty bases properly.
>
>
> Thanks for the fix, I'll rerun the tests.

The testsuite is clean with -Wabi=20 now, if you want to push it.

Reply via email to