[PATCH] tests: fix build against upcoming `gcc-14` (`-Werror=calloc-transposed-args`)

Sergei Trofimovich slyich@gmail.com
Thu Dec 21 09:23:30 GMT 2023


`gcc-14` added a new `-Wcalloc-transposed-args` warning recently. It
detected minor infelicity in `calloc()` API usage in `elfutils`:

    elfstrmerge.c: In function 'main':
    elfstrmerge.c:450:32: error:
      'calloc' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args]
      450 |   newscnbufs = calloc (sizeof (void *), newshnums);
          |                                ^~~~
    elfstrmerge.c:450:32: note: earlier argument should specify number of elements, later size of each element

Signed-off-by: Sergei Trofimovich <slyich@gmail.com>
---
 tests/elfstrmerge.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/elfstrmerge.c b/tests/elfstrmerge.c
index 56350bb9..4eb58bbb 100644
--- a/tests/elfstrmerge.c
+++ b/tests/elfstrmerge.c
@@ -447,7 +447,7 @@ main (int argc, char **argv)
     }
 
   newshnums = shdrnum - 1;
-  newscnbufs = calloc (sizeof (void *), newshnums);
+  newscnbufs = calloc (newshnums, sizeof (void *));
   if (newscnbufs == NULL)
     fail_errno ("Couldn't allocate memory for new section buffers", NULL);
 
-- 
2.42.0



More information about the Elfutils-devel mailing list