From owner-freebsd-current Fri Apr 7 02:09:17 1995 Return-Path: current-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id CAA29396 for current-outgoing; Fri, 7 Apr 1995 02:09:17 -0700 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id CAA29385 for ; Fri, 7 Apr 1995 02:08:47 -0700 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id TAA21424; Fri, 7 Apr 1995 19:06:39 +1000 Date: Fri, 7 Apr 1995 19:06:39 +1000 From: Bruce Evans Message-Id: <199504070906.TAA21424@godzilla.zeta.org.au> To: jkh@freefall.cdrom.com, pete@pelican.com Subject: Re: preprocessor conflict in proj.4 (geodesic.h) Cc: current@FreeBSD.org, gie@charon.er.usgs.gov Sender: current-owner@FreeBSD.org Precedence: bulk >> The offending define is >> geodesic.h:# define f GEODESIC.FLAT >> ---------------------------------------------------------------- >> and lines in ctype.h: >> #if defined(_USE_CTYPE_INLINE_) >> static __inline int >> __istype(_BSD_RUNE_T_ c, unsigned long f) >Yeah.. This isn't the first time this has come up. >Last time, I prepended an undercore to all the macro argument names >but I also seem to recall that Garrett screamed something at me about >moving things from implementation space to frobutronic space, >or something.. I can't remember. >In any case, Garrett knows the right answer to this! I don't! >Garrett? :-) Macro argument names don't need leading underscores. Only inline function arg names need leading underscores (one). has many other bugs. I have had fixes for them in my queue since December. The fixes are delayed waiting for similar fixes in . has many user names (e.g., `min' in structs) although it is otherwise careful about namespaces. Struct names don't need any protection from user variables but they can be clobbered by user macros. Bruce