> 1. This code isn't used - due to the combination of #if's. Sorry if I'm missing the point here, but FWIW, my suggestion for cpp-related debugging is to take the line from make for compiling the file and change it to: gcc -E -dD -o foobar ...copy rest of cmdline from make output...
Then foobar will have the #define statements, in the context of the regular preprocessed output, so you can see what is #defining what and why. http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html (at -dCHARS, toward the end.) (Or similar, for other compilers. Sorry, I don't recall if you're using gcc.) Best, karl