Date: Thu, 22 Jul 2004 13:14:42 +0000 (UTC) From: Johan Karlsson <johan@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/usr.bin/hexdump Makefile display.c odsyntax.c parse.c Message-ID: <200407221314.i6MDEgK4001627@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
johan 2004-07-22 13:14:42 UTC FreeBSD src repository Modified files: usr.bin/hexdump Makefile display.c odsyntax.c parse.c Log: display.c: - 'savech' is only used if it is set a few lines above where it is used, initialize it to silence warning. - 'length' is either -1 or greater than 0, hence it is safe to cast it to unsigned when comparing it here. odsyntax.c: - 'p' is assigned either (*argvp)[0] or (*argvp)[1] which both are char *. 'num' and 'end' are assigned values based on 'p'. Hence use char * instead of unsigned char * for these variables. '&end' as the second argument to strtoll does not need to be casted to char** any more. This solves a 'dereferencing type-punned pointer will break strict-aliasing rules' warning when compiling with -O2. parse.c: - 'prec' is only used when sokay == USEPREC and sokay = USEPREC when 'prec' is assigned. Hence 'prec' is not used uninitialized, initialize it to silence warning. - The code involving 'nextpr' is hard to follow, but I belive 'nextpr' will not be used unless it is initialized. Anyway, IF 'nextpr' is used uninitialized it is better to get a consistant error (seg fault, when dereferencing a NULL pointer) than potentially accessing some random memory. The above changes makes hexdump WARNS=6 clean even when compiled with -O2. Hence bump WARNS to keep it clean. Tested by: CFLAGS='-O2 -pipe' make universe Revision Changes Path 1.9 +1 -0 src/usr.bin/hexdump/Makefile 1.20 +2 -1 src/usr.bin/hexdump/display.c 1.17 +2 -2 src/usr.bin/hexdump/odsyntax.c 1.13 +3 -0 src/usr.bin/hexdump/parse.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200407221314.i6MDEgK4001627>