From owner-cvs-all Fri Sep 14 7:26:41 2001 Delivered-To: cvs-all@freebsd.org Received: from amsfep16-int.chello.nl (amsfep16-int.chello.nl [213.46.243.25]) by hub.freebsd.org (Postfix) with ESMTP id C376937B408; Fri, 14 Sep 2001 07:26:30 -0700 (PDT) Received: from daemon.chronias.ninth-circle.org ([62.163.96.180]) by amsfep16-int.chello.nl (InterMail vM.5.01.03.06 201-253-122-118-106-20010523) with ESMTP id <20010914142317.GRHC2039.amsfep16-int.chello.nl@daemon.chronias.ninth-circle.org>; Fri, 14 Sep 2001 16:23:17 +0200 Received: (from asmodai@localhost) by daemon.chronias.ninth-circle.org (8.11.3/8.11.3) id f8EEQOQ31781; Fri, 14 Sep 2001 16:26:24 +0200 (CEST) (envelope-from asmodai) Date: Fri, 14 Sep 2001 16:26:23 +0200 From: Jeroen Ruigrok van der Werven To: Bruce Evans Cc: Brian Somers , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/sys cdefs.h Message-ID: <20010914162623.K17490@daemon.ninth-circle.org> References: <200109141122.f8EBMYd29701@hak.lan.Awfulhak.org> <20010914221545.G18664-100000@delplex.bde.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20010914221545.G18664-100000@delplex.bde.org> User-Agent: Mutt/1.3.19i Organisation: Ninth-Circle Enterprises Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG -On [20010914 14:58], Bruce Evans (bde@zeta.org.au) wrote: >Yes, this change is backward. It undoes the main part of rev.1.17. >No special #define's are required to correctly break the compiles, >since __attribute__(()) is already a syntax error. Of course, __attribute__ is, for all I know, a GCC'ism. C90 and C99 don't have it in their description. This is merely a solution to fix the exposure of __attribute__((__format_arg__(2))) in stdio.h, which, due to not being properly wrapped, breaks compilers or other tools, which do not know the __attribute__ keyword, e.g. TenDRA. [Which is what I was trying to fix.] >This regression may be related to breakage of lint(1). lint(1) now >uses a wrong version of cpp, one that pre-defines __GNUC__. Since lint >is not gcc, this defeats all the __GNUC__ ifdefs in . In >particular, __attributes__'s in important macros like __printflike are >exposed to lint and lint barfs on important headers like that >expand these macros. lint's set-up is something I am still looking at and working on. I looked at the output of cpp -dD -E of stdio.h and the resulting code appears to be valid for the compiler, but the best solution, if judging by the proper specs, would be to wrap the __attribute__ occurence in stdio.h then, right? And provide a non-gcc version of fmtcheck. Or am I totally missing your point? -- Jeroen Ruigrok van der Werven/Asmodai asmodai@[wxs.nl|freebsd.org|xmach.org] Documentation nutter/C-rated Coder, finger asmodai@ninth-circle.dnsalias.net http://www.freebsd.org/doc/en_US.ISO8859-1/books/developers-handbook/ Nothing yet from nothing ever came... To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message