cris: sprintf sanitizer null destination pointer
Alan Modra
amodra@gmail.com
Thu Aug 3 11:43:01 GMT 2023
Simplify the sprintf calls, and use sprintf return value. Older code
in binutils avoided using the sprintf return count of chars printed,
because with some older C libraries it wasn't reliable. Nowadays it
should be OK to use (and we already use the return value elsewhere).
sprintf can't return an error status of -1 here.
* cris-dis.c (format_dec): Avoid sanitizer warning. Use sprintf
return value rather than calling strlen.
diff --git a/opcodes/cris-dis.c b/opcodes/cris-dis.c
index b8eaa4b7942..681fccf0dca 100644
--- a/opcodes/cris-dis.c
+++ b/opcodes/cris-dis.c
@@ -580,12 +580,7 @@ static char *
format_dec (long number, char *outbuffer, int signedp)
{
last_immediate = number;
- if (signedp)
- sprintf (outbuffer, "%ld", number);
- else
- sprintf (outbuffer, "%lu", (unsigned long) number);
-
- return outbuffer + strlen (outbuffer);
+ return outbuffer + sprintf (outbuffer, signedp ? "%ld" : "%lu", number);
}
/* Format the name of the general register regno into outbuffer. */
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list