Skip site navigation (1)Skip section navigation (2)
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>