bin/71613: [PATCH] traceroute(8): cleanup of the usr.sbin/traceroute6 code

Mark Linimon linimon at lonesome.com
Sun Mar 16 12:00:05 UTC 2008


The following reply was made to PR bin/71613; it has been noted by GNATS.

From: linimon at lonesome.com (Mark Linimon)
To: bug-followup at FreeBSD.org
Cc:  
Subject: Re: bin/71613: [PATCH] traceroute(8): cleanup of the usr.sbin/traceroute6 code
Date: Sun, 16 Mar 2008 06:50:49 -0500

 ----- Forwarded message from Dan Lukes <dan at obluda.cz> -----
 
 From: Dan Lukes <dan at obluda.cz>
 To: Bruce Evans <brde at optusnet.com.au>
 Cc: freebsd-bugs at freebsd.org, imp at freebsd.org
 
 Bruce Evans napsal/wrote, On 03/15/08 18:12:
 >__COPYRIGHT() in <sys/cdefs.h> reduces this problem by concatenating
 >__LINE__.  It could also concatenate a file name (but not __FILE__, since
 >that is probably not an identifier).
 
 	It's heuristic. It may, or may not work (it may or may not create 
 unique name across all sources).
 
 >>    We still have the problem the variable may be optimized out.
 >
 >__used prevents this.
 
 	__used is nonstandard gcc extension. I tried it on gcc 3.4.6 and 
 	4.2.3. It works.
 
 	I don't know if it work for icc as I have no one.
 
 	If it works, then it's good fix.
 
 >volatile doesn't prevent the variable being optimized out for gcc-4.2.
 >This makes some sense -- volatile sort of means "use it carefully", but
 >when it is not used no care with it is needed. 
 
 The meaning of volatile shall be "use it carefully, because you can't 
 found which way the variable is used". If the gcc-4.2 optimized it out, 
 it's definitely gcc's bug. If I claim "you don't know how it's used" the 
 compiler shall never respond "I better know what I know than you".
 
 But such discussion doesn't belong there.
 
 
 >I prefer 'static char const __used copyright[]'.  Not sure where __used
 >belongs.
 
 	I have no problem with it if __used works for all relevant 
 	compilers. I prefer the form of a macro (may be other than __COPYRIGHT) for 
 further maintenance, but no problem even with non-macro form.
 
  -------------
 
 	Well, it seems we reach consensus. So what about commitment of a 
 	patch for this four year old PR ? ;-)
 
 						Dan
 
 ----- End forwarded message -----


More information about the freebsd-bugs mailing list