Please keep in mind that compiling C is only one of the uses of the C preprocessor. So don't think of it as something that "ought" to be part of the C parser. And be careful changing the details of its behavior; compliance with a new C standard is NOT enough to ensure it will work properly for all the things it is used for.