From Bugzilla Helper:
User-Agent: Mozilla/4.76 [fr] (X11; U; Linux 2.4.4-rtl i686)
Description of problem:
gcc internal error on strlen()
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Reboot my system
If it is reproduceable (ie. always ICEs on the same input with the same options,
you need to provide
a) full gcc or g++ command line
b) rerun it with -save-temps option in addition to what you used to reproduce
it and attach here the .i or .ii file it creates
Please use -fno-builtin switch. linux/string.h conflicts with g++ builtins.
If you used <string.h> instead, it would work just fine.
This problem was "solved" in gcc3 by hardcoding -fno-builtin for C++
and relying on libstdc++-v3 headers to map those functions to the
__builtin_* counterparts. But libstdc++ (v2) doesn't do this and IMHO
disabling builtin optimizations for C++ for all folks just to get rid of this
ICE is not a good idea.
BTW: Just wondering: since when are kernel modules written in C++ and use libc headers?