Oops, you may be right. Where do other definition of __STDC__, presumably
#define __STDC__
come from, your command line, i.e., -D__STDC__?
Compilers define it; I believe it's specified in the C standard.
The gcc manual has some discussion about it.