https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61846
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- C99 also has this requirement. But C89 did not. >Values for errno are now required to be distinct positive values rather than > non-zero values. This change is for alignment with the ISO/IEC 9899:1999 > standard. So using -std=gnu99 should allow this to not be unitilaized except GCC has no way to know you are reading from errno just yet.