[binutils-gdb] elfedit false "may be used uninitialised"
Alan Modra
amodra@sourceware.org
Mon Nov 9 03:52:06 GMT 2020
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=a4e91c46306ed0bd24b45f882af0e28c5c8c3634
commit a4e91c46306ed0bd24b45f882af0e28c5c8c3634
Author: Alan Modra <amodra@gmail.com>
Date: Mon Nov 9 09:39:53 2020 +1030
elfedit false "may be used uninitialised"
elfedit.c:904:15: error: 'osabi' may be used uninitialised in this function [-Werror=maybe-uninitialized]
904 | osabi = concat (osabi, "|", osabis[i].name, NULL);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* elfedit (usage): Avoid false positive "may be used uninitialised".
Don't leak memory.
Diff:
---
binutils/ChangeLog | 5 +++++
binutils/elfedit.c | 9 +++------
2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 2e24fafb767..49e1f051804 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,8 @@
+2020-11-09 Alan Modra <amodra@gmail.com>
+
+ * elfedit (usage): Avoid false positive "may be used uninitialised".
+ Don't leak memory.
+
2020-11-09 Howard Chu <hyc@symas.com>
* ar.c (main): Use plugin_target rather than "target" when
diff --git a/binutils/elfedit.c b/binutils/elfedit.c
index 5fffe845d86..55474ffbbce 100644
--- a/binutils/elfedit.c
+++ b/binutils/elfedit.c
@@ -895,13 +895,10 @@ ATTRIBUTE_NORETURN static void
usage (FILE *stream, int exit_status)
{
unsigned int i;
- char *osabi;
+ char *osabi = concat (osabis[0].name, NULL);
- for (i = 0; i < ARRAY_SIZE (osabis); i++)
- if (i == 0)
- osabi = concat (osabis[i].name, NULL);
- else
- osabi = concat (osabi, "|", osabis[i].name, NULL);
+ for (i = 1; i < ARRAY_SIZE (osabis); i++)
+ osabi = reconcat (osabi, "|", osabis[i].name, NULL);
fprintf (stream, _("Usage: %s <option(s)> elffile(s)\n"),
program_name);
More information about the Binutils-cvs
mailing list