Nick Holgate wrote: > +#define FALSE ((int) 1) > +#define TRUE ((int) 0) This is contrary to usual logic which says that if (3>2) { whatever } and if (TRUE) { whatever } should be the equivalent things. Why not change the "wrong" definitions of TRUE and FALSE in whatever place they are found, instead of propagating this madness even more?