Date: Sat, 15 Mar 2008 08:41:28 +0100 From: Dan Lukes <dan@obluda.cz> To: Bruce Evans <brde@optusnet.com.au> Cc: freebsd-bugs@freebsd.org, imp@freebsd.org Subject: Re: bin/71613: [PATCH] traceroute(8): cleanup of the usr.sbin/traceroute6 code Message-ID: <47DB7DA8.7050400@obluda.cz> In-Reply-To: <20080315151246.L35251@besplex.bde.org> References: <200803150200.m2F206rl078586@freefall.freebsd.org> <20080315151246.L35251@besplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans napsal/wrote, On 03/15/08 06:06: > gcc broke its guarantee about "const" stopping this warning, and even > more importantly, of the variable not being removed, in gcc-4 or > earlier. The #if 0 in the above was committed on 2003/04/30 with a ... > Using a volatile qualifier instead of a const qualifier gives inconsistent > results. gcc-4.3 always removes "static char volatile copyright[] but > doesn't warn about this removal at WARNS > 1. Not warning is clearly > just a bug. gcc-3.3.3 always keeps this variable, and warns about it > being unused at WARNS > 1. Hm. It seems the GCCs are not consistent between versions. In advance, we didn't speak about intel's icc for now. I found something that make both proposed patches void. There is defined __COPYRIGHT macro in sys/cdef.h exactly just for such purpose. The cdefs.h logic tried to deal with icc/gcc and gcc.x/gcc.y differences. Even new gcc versions or brand new compiler can be handled in one place. So all the 'copyright' places shall be patched using __COPYRIGHT macro. Dan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47DB7DA8.7050400>