The C language performs implicit integer promotions and arithmetic conversions that silently change operand types, widths, and signedness. These automatic retyping rules are a well-documented source ...