Something unexpected happened to me. I upgraded gcc to 3.3.3, and afterwards I was unable to compile the 2.4.21 kernel. I was still able to compile the 2.4.20 version. However with gcc 3.2.3 and 2.95 I can compile the 2.4.21 kernel. I do not remember the exact error message, but it was at the very last part of the compilation. If somebody is interested I can post that error message latter.