If I want to define a value only if it is not defined, I do something like this :
#ifndef THING #define THING OTHER_THING #endif
What if
The solution I ended up using was including stdbool.h. I know this doesn't solve the question of how to check if a typedef is already defined, but it does let me ensure that the boolean type is defined.