Date: Wed, 18 Sep 2002 08:34:43 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: Bruce Evans <bde@zeta.org.au> Cc: Juli Mallett <jmallett@FreeBSD.ORG>, cvs-committers@FreeBSD.ORG, <cvs-all@FreeBSD.ORG> Subject: Re: cvs commit: src/usr.bin/make Makefile arch.c compat.c cond.c dir.c for.c job.c make.c make.h parse.c suff.c targ.c var.c Message-ID: <200209181534.g8IFYhFP085923@apollo.backplane.com> References: <20020918221316.I15381-100000@gamplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
As much as I usually disagree with BDE when it comes to maintaining portability (aka on prototypes), I consider the var-args MACRO(...) feature a travesty that should be avoided at least for another few years. IMHO. I recommend using the trick KASSERT uses instead of using a var-args macro. It isn't as pretty but you get the same result. -Matt : :On Tue, 17 Sep 2002, Juli Mallett wrote: : :> * De: Juli Mallett <jmallett@FreeBSD.org> [ Data: 2002-09-17 ] :> [ Subjecte: cvs commit: src/usr.bin/make Makefile arch.c compat.c cond.c dir.c for.c job.c make.c make.h parse.c suff.c targ.c var.c ] :> > jmallett 2002/09/17 15:31:27 PDT :> > :> > Modified files: :> > usr.bin/make Makefile arch.c compat.c cond.c dir.c :> > for.c job.c make.c make.h parse.c suff.c :> > targ.c var.c :> > Log: :> > Move common use of if (DEBUG(FOO)) printf... to DEBUGF(FOO, ...), using :> > variable length arguments to a macro. Bump version as this makes DEBUG :> > statements *always* go to stderr rather than sometimes stdout. There are :> > a few stragglers, which I will take care of as soon as I can. Mostly these :> > relate to the need-for-death-of some of the remote job code. : :This greatly unportabilizes make. Now it can't be compiled by C compilers :(C90). : :> Someone who has a good idea for how to stubify this macro in the BOOTSTRAPPING :> case, please let me know. My solutions fail on using enum { DIR } because DIR :> is an stdio type. : :The best solution is to write portable code. : :`make' was compileable with a C compiler almost perfectly yesterday, :although it couldn't quite work. Compilation probably depended on my :local hack to avoid hard-coded long longs and/or gccism's in standard :.. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200209181534.g8IFYhFP085923>