* charset.h (DECODE_CHAR): Return int, not unsigned;
this is what was intended anyway, and it avoids undefined behavior. (CHARSET_OFFSET): Remove unused macro, instead of fixing its integer-overflow issues. (ENCODE_CHAR): Return unsigned on all hosts, not just on 32-bit hosts. Formerly, it returned EMACS_INT on 64-bit hosts in the common case where the argument is EMACS_INT, and this behavior is not intended.
Showing with 11 additions and 14 deletions