Integral Promotions

You may use a char, a shortint, or an int bitfield, or their signed or unsigned varieties, or an enum type, in an expression wherever an int or unsignedint is used. If an int represents all values of the original type, the value is converted to an int; otherwise, it is converted to an unsignedint. Integral promotions preserve the value including its sign.