This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[RFC] trying to kill a warning in hpread.c (from call to complaint)
- From: Joel Brobecker <brobecker at gnat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Fri, 10 Jan 2003 18:26:39 +0400
- Subject: [RFC] trying to kill a warning in hpread.c (from call to complaint)
Hello,
I see the following warnings when compiling hpread.c:
hpread.c:1920: warning: int format, pointer arg (arg 3)
hpread.c:2025: warning: int format, pointer arg (arg 3)
hpread.c:2051: warning: int format, pointer arg (arg 3)
hpread.c:2072: warning: int format, pointer arg (arg 3)
hpread.c:2146: warning: int format, pointer arg (arg 3)
hpread.c:2230: warning: int format, pointer arg (arg 3)
These warnings point to the following macro:
#define SET_NAMESTRING(SYM, NAMEP, OBJFILE) \
if (! hpread_has_name ((SYM)->dblock.kind)) \
*NAMEP = ""; \
else if (((unsigned)(SYM)->dsfile.name) >= VT_SIZE (OBJFILE)) \
{ \
complaint (&symfile_complaints, "bad string table offset in symbol %d", \
(char *) symnum); \
*NAMEP = ""; \
} \
else \
*NAMEP = (SYM)->dsfile.name + VT (OBJFILE)
I think that the warning comes from the call to complaint where the
format string contains "%d", but the next parameter is casted to a
"char *".
Is the cast to "char *" necessary? Can/Should I remove it?
Thanks,
--
Joel