From: Philippe Mathieu-Daudé Date: Thu, 23 May 2024 15:06:20 +0000 (+0100) Subject: hw/input/tsc2005: Fix -Wchar-subscripts warning in tsc2005_txrx() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=84ce4b9b9943d26c9d9c7ea8abd924033c125535;p=qemu.git hw/input/tsc2005: Fix -Wchar-subscripts warning in tsc2005_txrx() Check the function index is in range and use an unsigned variable to avoid the following warning with GCC 13.2.0: [666/5358] Compiling C object libcommon.fa.p/hw_input_tsc2005.c.o hw/input/tsc2005.c: In function 'tsc2005_timer_tick': hw/input/tsc2005.c:416:26: warning: array subscript has type 'char' [-Wchar-subscripts] 416 | s->dav |= mode_regs[s->function]; | ~^~~~~~~~~~ Signed-off-by: Philippe Mathieu-Daudé Message-id: 20240508143513.44996-1-philmd@linaro.org Reviewed-by: Peter Maydell [PMM: fixed missing ')'] Signed-off-by: Peter Maydell --- diff --git a/hw/input/tsc2005.c b/hw/input/tsc2005.c index 941f163d36..ac7f54eeaf 100644 --- a/hw/input/tsc2005.c +++ b/hw/input/tsc2005.c @@ -406,6 +406,9 @@ uint32_t tsc2005_txrx(void *opaque, uint32_t value, int len) static void tsc2005_timer_tick(void *opaque) { TSC2005State *s = opaque; + unsigned int function = s->function; + + assert(function < ARRAY_SIZE(mode_regs)); /* Timer ticked -- a set of conversions has been finished. */ @@ -413,7 +416,7 @@ static void tsc2005_timer_tick(void *opaque) return; s->busy = false; - s->dav |= mode_regs[s->function]; + s->dav |= mode_regs[function]; s->function = -1; tsc2005_pin_update(s); }