The version of cpp included with RH7.0 doesn't output lines of the form: # nnn "/usr/include/blahdeblah.h" n n for any included files which don't generate output (i.e. which only contain #defines). Specifically, it doesn't generate such a line for /usr/include/bits/signum.h, which breaks compilation of the latest development version of zsh.
What does zsh need it for? I don't think C99 mandates the preprocessor to output them for headers not generating any output.
You're probably right - I couldn't say whether it's actually mandatory or not. The issue with zsh is described at: http://www.zsh.org/mla/workers/2000/msg03745.html http://www.zsh.org/mla/workers/2000/msg03748.html Thanks.
Should be fixed in gcc-2.96-64.