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): How reproducible: Always Steps to Reproduce: 1. Reboot my system 2. compile 3. Additional info:
Compile what? 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?