On Sat, Oct 12, 2002 at 01:44:36AM -0700, Terry Lambert wrote:
> 
> I think the lack of "||" and "&&" mostly had to do with the fact
> that there was conditional evaluation of the RHS of the operator,
> based on the result of the LHS.
> 
> 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).

Tony.
-- 
f.a.n.finch <[EMAIL PROTECTED]> http://dotat.at/
THAMES DOVER: SOUTHEASTERLY VEERING NORTHWESTERLY 4 OR 5, OCCASIONALLY 6,
BECOMING VARIABLE 3. RAIN OR SHOWERS. MODERATE OR GOOD.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to