[PATCH] malloc: obscure calloc use in tst-calloc

Maciej W. Rozycki macro@orcam.me.uk
Sat Jan 11 15:01:48 GMT 2025


On Fri, 10 Jan 2025, Sam James wrote:

> diff --git a/malloc/tst-calloc.c b/malloc/tst-calloc.c
> index 77a32f8052..122b2cbeaf 100644
> --- a/malloc/tst-calloc.c
> +++ b/malloc/tst-calloc.c
> @@ -94,16 +95,19 @@ random_test (void)
>  static void
>  null_test (void)
>  {
> +  /* Obscure allocation size from the compiler.  */
> +  volatile size_t max_size = UINT_MAX;
> +  volatile size_t zero_size = 0;
>    /* If the size is 0 the result is implementation defined.  Just make
>       sure the program doesn't crash.  The result of calloc is
>       deliberately ignored, so do not warn about that.  */
>    DIAG_PUSH_NEEDS_COMMENT;
>    DIAG_IGNORE_NEEDS_COMMENT (10, "-Wunused-result");
>    calloc (0, 0);
> -  calloc (0, UINT_MAX);
> -  calloc (UINT_MAX, 0);
> -  calloc (0, ~((size_t) 0));
> -  calloc (~((size_t) 0), 0);
> +  calloc (0, max_size);
> +  calloc (max_size, 0);
> +  calloc (0, ~((size_t) zero_size));
> +  calloc (~((size_t) zero_size), 0);

 The casts obviously serve no purpose and make no sense anymore.

  Maciej


More information about the Libc-alpha mailing list