This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [GLIBC][PATCH] Remove string/bits/string2.h header
On Mon, Dec 12, 2016 at 8:28 AM, Wilco Dijkstra <Wilco.Dijkstra@arm.com> wrote:
> Zack Weinberg wrote:
>> On Mon, Dec 12, 2016 at 7:32 AM, Wilco Dijkstra <Wilco.Dijkstra@arm.com> wrote:
>> > After patches [1-5] there is no longer a need for string2.h.
>> > Move the remaining defines for __bzero and __stpcpy to string.h
>> > (these are needed as otherwise elf/localplt fails) and remove all
>> > mention of string2.h.
>>
>> I'd prefer that this header stick around, even if there is no
>> _current_ use for it. I need somewhere to put the inline expansion of
>> explicit_bzero (see
>> https://sourceware.org/ml/libc-alpha/2016-12/msg00274.html) and it
>> seems likely to me that new uses will appear.
>
> I think it is best to get rid of string2.h given it is only included in a limited number of
> cases. There are now only small number of inlines left that are useful. The
> explicit_bzero is an example of something you want to inline always (as it's just
> memset), not in the limited cases of string2.h.
So, where should I put it then? Directly in string.h?
>> These can probably go in include/string.h instead of string/string.h.
>
> Yes if that's more appropriate.
I *think* they are only used by internal code at this point, but we
might need to check all the sysdeps/.../bits/string.h variations as
well. (In general, __foobar aliases should be in include/ unless
they're used somehow by the public headers.)
> Does your header cleanup solve both the internal
> name space issues as well as allowing builtins to be used in GLIBC internally?
I don't think it solves all the problems in that area, no.
zw