Hi Jim,
> You might just as well define and use your own macro,
>
> #define ASSERT(e) do { if (!(e)) abort (); } while (0)
Oh yes, this one is perfectly fine with me.
> you assert a condition rather than testing its negation.
Good point. Yes, I too get confused when reading through a bunch
of negated assertions like
if (index < 0 || index >= count)
return -1;
> #ifdef NDEBUG
> # error "disable assertions herein at your peril -- and if you disable
> then nonetheless, then don't report bugs"
> #endif
Hehe, I guess I would attract some complaints if I was to publish such code ;-)
Bruno