[comp.sys.amiga.tech] Problem with assert.h in Manx 5.0, and a fix

karl@sugar.hackercorp.com (Karl Lehenbauer) (04/12/90)

There is a problem with the assert macro in assert.h in Manx 5.0.  It cost
me a bit of time to find, damn it, and I thought I'd save anyone else the
hassle.  The problem occurs when there is a compound expression in an
assert, as in:

	assert(!Playing || (next_event_ticks != BIG_NUMBER));

Only the second half of the assert is actually checked.  In the file, the
macro is defined (I only show a bit of it here for to avoid possible copyright
problems)

#define assert(x) (x == 0) ? ...

It needs to be changed to:

#define assert(x) ((x) == 0) ? ...
-- 
-- uunet!sugar!karl   "I hate quotations.  Tell me what you know." -- Emerson
-- Usenet access: (713) 438-5018