On 2008-07-01 11:11:42 -0700, Ian Lance Taylor wrote: > __GNUC__ is indeed defined by the compiler proper, not by the > preprocessor.
What do you mean here? Even when calling the preprocessor directly, __GNUC__ is defined: vin% gcc -dM -E -xc /dev/null | grep __GNUC__ #define __GNUC__ 4 vin% cpp -dM /dev/null | grep __GNUC__ #define __GNUC__ 4 > But that in turn does not matter, as if any non-gcc compiler *did* use > the gcc preprocessor, it would do so via gcc -E. In gcc, the > preprocessor is not a separate program. But in any case, there's a separate preprocessor: cpp. And perhaps cpp shouldn't define __GNUC__. (BTW, this isn't a compiler, but xrdb uses cpp by default.) -- Vincent Lefèvre <[EMAIL PROTECTED]> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)