Get real!
This is a COMPILER BUG!
I don't see why people keep on thinking that the kernel should make excuses for
user programs. It should NOT. Excusing bad programming is a shooting offence,
no matter _what_ the circumstances. It is at least understandable if there is
no way to fix the software bug (ie commercial compiler), but in this case it's
just a matter of upgrading your compiler to a working version.
If gcc-2.5.8 is buggy, you'd better not use it. It's a simple as that. Use the
old kernels if it works for you, but I'm _not_ going to make the current
kernels do the same broken things that the old ones did.
Note that hardware bugs are a separate matter: those can be considered
"environment problems", and if they can be worked around, they should. But
software bugs? No way.
Linus