Uh, that's standard C89. You know, the bit fields? Except for the "false" keyword, that's from stdbool.h and you need C99 for that to reliably exist.
Sign-extension of 1-bit fields also messes people up all the time, but that’s “just” an easy-to-fix bug.