sim/iq2000: silence pointer-sign warnings

When building the iq2000 simulator I see a few warnings like this:

  /tmp/build/sim/../../src/sim/iq2000/iq2000.c: In function ‘fetch_str’:
  /tmp/build/sim/../../src/sim/iq2000/iq2000.c:50:54: error: pointer targets in passing argument 3 of ‘sim_read’ differ in signedness [-Werror=pointer-sign]
     50 |   sim_read (CPU_STATE (current_cpu), CPU2DATA(addr), buf, nr);
        |                                                      ^~~
        |                                                      |
        |                                                      char *

I've silenced these warnings by casting buf to 'unsigned char *'.
With this change I now see no warnings when compiling iq2000.c, so
I've removed the line from Makefile.in that disables -Werror.

Makefile.in was also disabling -Werror when compiling mloop.c,
however, I'm not seeing any warnings when compiling that file, so I've
removed the -Werror disable in that case too.
This commit is contained in:
Andrew Burgess
2022-10-12 12:46:42 +01:00
parent d0a7ca87ab
commit feab6abfe2
2 changed files with 6 additions and 6 deletions

View File

@ -37,9 +37,6 @@ ALL_CPU_CFLAGS = -DHAVE_CPU_IQ2000BF -DHAVE_CPU_IQ10BF
SIM_EXTRA_CLEAN = iq2000-clean
# Some modules don't build cleanly yet.
iq2000.o mloop.o: SIM_WERROR_CFLAGS =
## COMMON_POST_CONFIG_FRAG
arch = iq2000

View File

@ -47,7 +47,8 @@ fetch_str (SIM_CPU *current_cpu, PCADDR pc, DI addr)
pc, read_map, CPU2DATA(addr + nr)) != 0)
nr++;
buf = NZALLOC (char, nr + 1);
sim_read (CPU_STATE (current_cpu), CPU2DATA(addr), buf, nr);
sim_read (CPU_STATE (current_cpu), CPU2DATA(addr), (unsigned char *) buf,
nr);
return buf;
}
@ -82,7 +83,8 @@ do_syscall (SIM_CPU *current_cpu, PCADDR pc)
case TARGET_NEWLIB_SYS_write:
buf = zalloc (PARM3);
sim_read (CPU_STATE (current_cpu), CPU2DATA(PARM2), buf, PARM3);
sim_read (CPU_STATE (current_cpu), CPU2DATA(PARM2),
(unsigned char *) buf, PARM3);
SET_H_GR (ret_reg,
sim_io_write (CPU_STATE (current_cpu),
PARM1, buf, PARM3));
@ -105,7 +107,8 @@ do_syscall (SIM_CPU *current_cpu, PCADDR pc)
SET_H_GR (ret_reg,
sim_io_read (CPU_STATE (current_cpu),
PARM1, buf, PARM3));
sim_write (CPU_STATE (current_cpu), CPU2DATA(PARM2), buf, PARM3);
sim_write (CPU_STATE (current_cpu), CPU2DATA(PARM2),
(unsigned char *) buf, PARM3);
free (buf);
break;