Date: Sat, 12 Oct 2002 13:20:03 -0700 From: Terry Lambert <tlambert2@mindspring.com> To: Tony Finch <dot@dotat.at> Cc: Bruce Evans <bde@zeta.org.au>, Craig Rodrigues <rodrigc@attbi.com>, freebsd-standards@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG Subject: Re: Problem detecting POSIX symbolic constants Message-ID: <3DA883F2.33E84C@mindspring.com> References: <20021012171803.F15910-100000@gamplex.bde.org> <3DA7E0F4.5988CA77@mindspring.com> <20021012151336.A24868@chiark.greenend.org.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
Tony Finch wrote: > > With just an "&" or an "|", you actually need a much less complicated > > state machine to evaluate a constant expression. With the "||"/"&&", > > you almost have to do an edge associative operation, which implies a > > much more complex state machine for the preprocessor, I think. > > No -- the short-circuiting behaviour of && and || only matters if > you can have side-effects, which you can't in the preprocessor, > so there is no need to implement it (unifdef doesn't). Consider: #if _DEFINED_SUPPORTED && defined(SOMETHING) -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3DA883F2.33E84C>