For conformance to ISO C the stdbool.h header has to provide the macro __bool_true_false_are_defined (defined to 1). Yep, that name is really in the standard.