Re: git: 5f732742ad5b - main - libc: Add free_sized() and free_aligned_sized() as per C23
Date: Tue, 09 Jun 2026 23:14:18 UTC
On Tue, Jun 09, 2026 at 10:06:09AM -0400, John Baldwin wrote:
> On 6/9/26 05:30, Robert Clausecker wrote:
> > Hi Konstantin,
> >
> > Am Tue, Jun 09, 2026 at 04:38:58AM +0300 schrieb Konstantin Belousov:
> > > On Sun, Jun 07, 2026 at 09:00:59PM +0000, Robert Clausecker wrote:
> > > > The branch main has been updated by fuz:
> > > >
> > > > URL: https://cgit.FreeBSD.org/src/commit/?id=5f732742ad5b3133a860a8969cf2bd13dc9ac358
> > > >
> > > > commit 5f732742ad5b3133a860a8969cf2bd13dc9ac358
> > > > Author: Faraz Vahedi <kfv@kfv.io>
> > > > AuthorDate: 2026-05-16 18:36:17 +0000
> > > > Commit: Robert Clausecker <fuz@FreeBSD.org>
> > > > CommitDate: 2026-06-07 20:59:19 +0000
> > > >
> > > > libc: Add free_sized() and free_aligned_sized() as per C23
> > >
> > > > +FBSD_1.9 {
> > > > + free_sized;
> > > > + free_aligned_sized;
> > >
> > > > + __free_sized;
> > > > + __free_aligned_sized;
> > >
> > > Why these two symbols (from private C namespace) need to be exported?
> > > And then, why they need to be exported in the public version?
> > >
> > > > +};
> >
> > This is for consistency with the other libc allocator symbols, which are also
> > exported. I suppose this is useful if you e.g. wish to hook or replace the
> > allocation machinery, giving you access to the originals where desired.
>
> That's what RTLD_NEXT is for?
Well there is indeed 9dfba391d62cb.
But since we are trying to discourage the non-standard interpretation
of the weak symbol semantic from rtld (of course this can never happen),
might be it is not too wise to extend the hack.
Anyway, it is in now, so let it be.