From 68eb5fbd37c31ed7c0c916656131eea7bb58d13d Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Thu, 15 Sep 2016 09:17:59 +0900 Subject: [PATCH] tests/gpgscm: Fix use of pointer. * tests/gpgscm/scheme-private.h (struct scheme): Use (void *) for alloc_seg. * tests/gpgscm/scheme.c (alloc_cellseg): Use (void *) for cp. Use (void *) for coercion of address calculation. -- In old C language, (char *) means an address. In modern C, it's specifically an address with alignment=1. It's good to use (void *) for an address, because newer compiler emits warnings. Note: in this particular case, it is just a warning and the code is safe against invalid alignment, though. Signed-off-by: NIIBE Yutaka --- tests/gpgscm/scheme-private.h | 2 +- tests/gpgscm/scheme.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h index 9eafe766d..727e0c0bb 100644 --- a/tests/gpgscm/scheme-private.h +++ b/tests/gpgscm/scheme-private.h @@ -78,7 +78,7 @@ int tracing; #ifndef CELL_NSEGMENT #define CELL_NSEGMENT 10 /* # of segments for cells */ #endif -char *alloc_seg[CELL_NSEGMENT]; +void *alloc_seg[CELL_NSEGMENT]; pointer cell_seg[CELL_NSEGMENT]; int last_cell_seg; diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c index 1fc764356..883395071 100644 --- a/tests/gpgscm/scheme.c +++ b/tests/gpgscm/scheme.c @@ -602,7 +602,7 @@ static int alloc_cellseg(scheme *sc, int n) { pointer newp; pointer last; pointer p; - char *cp; + void *cp; long i; int k; int adj=ADJ; @@ -614,14 +614,14 @@ static int alloc_cellseg(scheme *sc, int n) { for (k = 0; k < n; k++) { if (sc->last_cell_seg >= CELL_NSEGMENT - 1) return k; - cp = (char*) sc->malloc(CELL_SEGSIZE * sizeof(struct cell)+adj); + cp = sc->malloc(CELL_SEGSIZE * sizeof(struct cell)+adj); if (cp == 0) return k; i = ++sc->last_cell_seg ; sc->alloc_seg[i] = cp; /* adjust in TYPE_BITS-bit boundary */ if(((unsigned long)cp)%adj!=0) { - cp=(char*)(adj*((unsigned long)cp/adj+1)); + cp=(void *)(adj*((unsigned long)cp/adj+1)); } /* insert new segment in address order */ newp=(pointer)cp;