Can I assume
(bool)true == (int)1
Yes. The casts are redundant. In your expression:
true == 1
Integral promotion applies and the bool value will be promoted to an
int and this promotion must yield 1.
Reference: 4.7 [conv.integral] / 4: If the source type is
true is converted to one.