[PATCH newlib] libc/include/malloc.h: Add prototype for GNU extension malloc_usable_size()
C Howland
cc1964t@gmail.com
Tue Mar 15 15:38:20 GMT 2022
>
> ------------------------------
> *From:* Newlib <newlib-bounces+craig.howland=caci.com@sourceware.org> on
> behalf of Joel Sherrill <joel@rtems.org>
> *Sent:* Tuesday, March 15, 2022 11:16 AM
> *To:* newlib@sourceware.org <newlib@sourceware.org>
> *Subject:* [PATCH newlib] libc/include/malloc.h: Add prototype for GNU
> extension malloc_usable_size()
>
>
> This is not provided by the newlib malloc implementation but may
> be available in external implementations.
> ---
> newlib/libc/include/malloc.h | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/newlib/libc/include/malloc.h b/newlib/libc/include/malloc.h
> index a9dc5bca6..e73095e1e 100644
> --- a/newlib/libc/include/malloc.h
> +++ b/newlib/libc/include/malloc.h
> @@ -137,6 +137,10 @@ extern void __malloc_lock(struct _reent *);
>
> extern void __malloc_unlock(struct _reent *);
>
> +#if __GNU_VISIBLE
> +extern size_t malloc_usable_size(void *);
> +#endif
> +
> /* A compatibility routine for an earlier version of the allocator. */
>
> extern void mstats (char *);
> --
> 2.24.4
>
>
Sorry, but I fail to see why adding this makes sense. If there's an
application which adds a function they should be editing the header file
when they add it. (There's not even a stub being supplied here.)
Additionally, the Linux man page for the function says "The main use of
this function is for debugging and introspection." That is, it is not even
a general application utility, but of very limited use. Either provide the
function with the prototype or no prototype.
Craig
More information about the Newlib
mailing list