From 0cfab104d2c03ce5461ac1f396c42c4cf747f64a Mon Sep 17 00:00:00 2001 From: Ivan Maidanski Date: Fri, 31 Aug 2018 20:00:33 +0300 Subject: Workaround 'bad pointer arithmetic' false waring in check_annotated_obj * dbg_mlc.c [!SHORT_DBG_HDRS] (GC_check_annotated_obj): Change (word*)ptr+ofs expressions to &((word*)ptr)[ofs]. --- dbg_mlc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'dbg_mlc.c') diff --git a/dbg_mlc.c b/dbg_mlc.c index af9652af..4d547c15 100644 --- a/dbg_mlc.c +++ b/dbg_mlc.c @@ -334,11 +334,11 @@ static void *store_debug_info(void *p, size_t lb, return((ptr_t)(&(ohdr -> oh_sf))); } if (((word *)ohdr)[BYTES_TO_WORDS(gc_sz)-1] != (END_FLAG ^ (word)body)) { - return((ptr_t)((word *)ohdr + BYTES_TO_WORDS(gc_sz)-1)); + return (ptr_t)(&((word *)ohdr)[BYTES_TO_WORDS(gc_sz)-1]); } if (((word *)body)[SIMPLE_ROUNDED_UP_WORDS(ohdr -> oh_sz)] != (END_FLAG ^ (word)body)) { - return((ptr_t)((word *)body + SIMPLE_ROUNDED_UP_WORDS(ohdr->oh_sz))); + return (ptr_t)(&((word *)body)[SIMPLE_ROUNDED_UP_WORDS(ohdr->oh_sz)]); } return(0); } -- cgit v1.2.1