Operand width and signedness determine extension, comparison, shift, result width, truncation, and overflow behavior. Make those choices explicit before relying on an expression.
Reason it through
- Extend operands before addition when the carry bit matters.
- Cast signed and unsigned values deliberately, especially around comparisons and shifts.
- State whether overflow wraps, saturates, flags an error, or is impossible by contract.
