Odpovídáte na názor ke článku Počítání s přetečením v C.
Tady neco nefunguje.
Pokud budu scitat (osmibitove) 0x7f+0x7f+0=0xfe (takze neni carry)
(int)(a|b) bude 0x7f, takze vetsi nez nula, true
AND
(int)c bude -2, takze mensi nez nula, true
=
carry=true, ale melo byt false