Ben Laurie wrote:
BTW, on the subject of bitfield gotchas, never make boolean fields signed - why? Coz:
struct x { signed int onebitfield:1; } x; signed int someint;
x.onebitfield=TRUE; someint=TRUE;
assert(x.onebitfield == someint); /* SPLAT!!! */
:)