If the destination type is unsigned, the resulting value is the least unsigned integer congruent to the source
integer (modulo 2 where n is the number of bits used to represent the unsigned type). [ Note: In a two’s
complement representation, this conversion is conceptual and there is no change in the bit pattern (if there
is no truncation). — end note ]
If the destination type is signed, the value is unchanged if it can be represented in the destination type (and
bit-field width); otherwise, the value is implementation-defined.
If the destination type is bool, see 4.12. If the source type is bool, the value false is converted to zero and
the value true is converted to one.
The conversions allowed as integral promotions are excluded from the set of integral conversions.