https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117833
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Wonder what changed, the code hasn't been touched in 4 years.
My bootstrap with go last night worked fine and even with current trunk I can't
reproduce.
Perhaps special_char_code.code_for(c) got inlined and ranger saw that c isn't
VARYING?
Anyway, the compiler most likely doesn't know that len == 1 implies c <= 255U
and that thus buffer[8]; is enough (even buffer[5]) could be. And if len == 1
didn't imply anything on the range of c, it could print up to 4294967295 and
thus need 13 characters.