https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64186
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- >My interpretation of the C99 conversion rules is that the conversion to >unsigned short You are incorrect, the conversion rules never convert to anything smaller than int.