When compiling code with the GCC version that comes with RHL v7.1, it breaks output lines (probably to stay inside 80 column-wide terminals). This is very annoying when compiling in environments that support wider lines (like within Emacs), as the output gets much harder to read. When compiling C++ code, you often end up with half the function signature on one line, the rest on the following line, and warnings including STL code spans loads of lines. I'd suggest going back to the old output (like in GCC v2.95.3), and have the new line-breaking output hidden behind an option-switch to GCC.
Use -fmessage-length=0 if it annoys you.
Wasn't aware of that one (not mentioned in "g++ --help", found it in the info page). However, I still think this is a broken change. With the new switch, one can go back to the old style output, but then you'll get annoying output if compiling with other versions of GCC (like the one on RHL v6.2). $ g++ -fmessage-length=0 str.cpp cc1plus: Invalid option `-fmessage-length=0' We try to maintain code for several different platforms/compilers in one simple makefile-system, and that breaks with this change. The best solution I can come up with now, is to set system-wide env-variables containing that switch on RHL v7.1 machines, but that is cumbersome... Is it possible to set the default to 0 in the spec file or somewhere else?
gcc-3.0 (to be released on friday) uses the same settings, so you wouldn't gain anything if we changed in in 2.96-RH, since you'd have to adapt your Makefiles for 3.0 anyway.