From da9ecd6085aa03f6f671f1e42431642912635820 Mon Sep 17 00:00:00 2001 From: Andrew Burgess Date: Mon, 1 Feb 2021 11:37:46 +0000 Subject: sim/rx: avoid pointer arithmetic on void * pointers Pointer arithmetic on void * pointers results in a GCC warning. Avoid the warning by casting the pointer to its actual type earlier in the function. sim/rx/ChangeLog: * mem.c (mem_put_blk): Rename parameter, add cast from parameter type to local type. Remove cast later in the function. (mem_get_blk): Likewise. * mem.h (mem_put_blk): Rename parameter to match definition. (mem_get_blk): Likewise. --- sim/rx/mem.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'sim/rx/mem.c') diff --git a/sim/rx/mem.c b/sim/rx/mem.c index fe8e08d..7e62bfb 100644 --- a/sim/rx/mem.c +++ b/sim/rx/mem.c @@ -434,13 +434,15 @@ mem_put_si (int address, unsigned long value) } void -mem_put_blk (int address, void *bufptr, int nbytes) +mem_put_blk (int address, void *bufptr_void, int nbytes) { + unsigned char *bufptr = (unsigned char *) bufptr_void; + S ("<="); if (enable_counting) mem_counters[1][1] += nbytes; while (nbytes--) - mem_put_byte (address++, *(unsigned char *) bufptr++); + mem_put_byte (address++, *bufptr++); E (); } @@ -567,13 +569,15 @@ mem_get_si (int address) } void -mem_get_blk (int address, void *bufptr, int nbytes) +mem_get_blk (int address, void *bufptr_void, int nbytes) { + char *bufptr = (char *) bufptr_void; + S ("=>"); if (enable_counting) mem_counters[0][1] += nbytes; while (nbytes--) - *(char *) bufptr++ = mem_get_byte (address++); + *bufptr++ = mem_get_byte (address++); E (); } -- cgit v1.1