On Wed, 27 Sept 2023 at 05:44, François Dumont <frs.dum...@gmail.com> wrote: > > Still no chance to get feedback from TC ? Maybe I can commit the below > then ?
I've heard back from Tim now. Please use "Tim Song <t.canens....@gmail.com>" as the author. You can change the commit again using git commit --amend --author "Tim Song <t.canens....@gmail.com>" OK for trunk with that change - thanks for waiting. > > AFAICS on gcc mailing list several gcc releases were done recently, too > late. There have been no releases this month, so the delay hasn't caused any problems. > > > On 14/09/2023 06:46, François Dumont wrote: > > Author: TC <rs2...@gmail.com> > > Date: Wed Sep 6 19:31:55 2023 +0200 > > > > libstdc++: Force _Hash_node_value_base methods inline to fix abi > > (PR111050) > > > > https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=1b6f0476837205932613ddb2b3429a55c26c409d > > > > changed _Hash_node_value_base to no longer derive from > > _Hash_node_base, which means > > that its member functions expect _M_storage to be at a different > > offset. So explosions > > result if an out-of-line definition is emitted for any of the > > member functions (say, > > in a non-optimized build) and the resulting object file is then > > linked with code built > > using older version of GCC/libstdc++. > > > > libstdc++-v3/ChangeLog: > > > > PR libstdc++/111050 > > * include/bits/hashtable_policy.h > > (_Hash_node_value_base<>::_M_valptr(), > > _Hash_node_value_base<>::_M_v()) > > Add [[__gnu__::__always_inline__]]. > > > > Ok to commit ? > > > > On 12/09/2023 18:09, Jonathan Wakely wrote: > >> On Mon, 11 Sept 2023 at 18:19, François Dumont <frs.dum...@gmail.com> > >> wrote: > >>> > >>> On 11/09/2023 13:51, Jonathan Wakely wrote: > >>>> On Sun, 10 Sept 2023 at 14:57, François Dumont via Libstdc++ > >>>> <libstd...@gcc.gnu.org> wrote: > >>>>> Following confirmation of the fix by TC here is the patch where I'm > >>>>> simply adding a 'constexpr' on _M_next(). > >>>>> > >>>>> Please let me know this ChangeLog entry is correct. I would prefer > >>>>> this > >>>>> patch to be assigned to 'TC' with me as co-author but I don't know > >>>>> how > >>>>> to do such a thing. Unless I need to change my user git identity > >>>>> to do so ? > >>>> Sam already explained that, but please check with Tim how he wants to > >>>> be credited, if at all. He doesn't have a copyright assignment, and > >>>> hasn't added a DCO sign-off to the patch, but it's small enough to not > >>>> need it as this is the first contribution credited to him. > >>>> > >>>> > >>>>> libstdc++: Add constexpr qualification to > >>>>> _Hash_node::_M_next() > >>>> What has this constexpr addition got to do with the ABI change and the > >>>> always_inline attributes? > >>>> > >>>> It certainly doesn't seem like it should be the summary line of the > >>>> git commit message. > >>> Oops, sorry, that's what I had started to do before Tim submitted > >>> anything. > >>> > >>> Here is latest version: > >> No patch attached, and the ChangeLog below still mentions the constexpr. > >> > >> I've pinged Tim via another channel to ask him about the author > >> attribution. > >> > >> > >>> Author: TC <rs2...@gmail.com> > >>> Date: Wed Sep 6 19:31:55 2023 +0200 > >>> > >>> libstdc++: Force inline on _Hash_node_value_base methods to > >>> fix abi > >>> (PR111050) > >>> > >>> https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=1b6f0476837205932613ddb2b3429a55c26c409d > >>> > >>> changed _Hash_node_value_base to no longer derive from > >>> _Hash_node_base, which means > >>> that its member functions expect _M_storage to be at a different > >>> offset. So explosions > >>> result if an out-of-line definition is emitted for any of the > >>> member functions (say, > >>> in a non-optimized build) and the resulting object file is then > >>> linked with code built > >>> using older version of GCC/libstdc++. > >>> > >>> libstdc++-v3/ChangeLog: > >>> > >>> PR libstdc++/111050 > >>> * include/bits/hashtable_policy.h > >>> (_Hash_node_value_base<>::_M_valptr(), > >>> _Hash_node_value_base<>::_M_v()) > >>> Add [[__gnu__::__always_inline__]]. > >>> (_Hash_node<>::_M_next()): Add constexpr. > >>> > >>> Co-authored-by: François Dumont <fdum...@gcc.gnu.org> > >>> > >>> Ok for you TC (Tim ?) ? > >>> > >>> >