https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89604
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- In C, plain char can either be signed or unsigned; this is unlike int. Which of signed char or unsigned char has the same range, representation, and behavior as “plain” char (C90 6.1.2.5, C90 6.2.1.1, C99 and C11 6.2.5, C99 and C11 6.3.1.1).