On Mon, Dec 20, 2004 at 12:15:39AM +0200, Alexey Dobriyan wrote: > On Sunday 19 December 2004 21:09, Andi Kleen wrote: > > > make allmodconfig > > make CC=/usr/local/gcc4/bin/gcc 2>&1 | tee LOG > > CC kernel/acct.o > kernel/acct.c: In function ???encode_float???: > kernel/acct.c:366: fatal error: internal consistency failure > compilation terminated. Looks like another gcc bug. I will file a gcc bug thanks. Just disable accounting in the .config to continue or use make -k > > here. > > Maaaany "differ in signedness" warnings. Yep, and some new "bla is uninitialized" warnings. Many of them are bogus, because gcc just cannot prove if a variable is uninitialized or not and it now does it for structure fields too. Anyways, they all need to be examined and fixed. > =============================================================================== > init/main.c: In function ???maxcpus???: > init/main.c:150: warning: pointer targets in passing argument 2 of ???get_option??? > differ in signedness > =============================================================================== > unsigned int maxcpus; > int get_option(char **str, int *pint); > ... > get_option(&str, &max_cpus); > =============================================================================== > For example, this one should be left as is, shouldn't it? The warning should be fixed, otherwise the warning noise will hide real valuable warnings. It's a judgement call whether you modify the function prototype or the argument. In this case both would be possible. I would usually do the change that requires less work (e.g. fix the argument in this case because there are a lot more get_option callers). This means make maxcpus an int. Please avoid adding casts if possible. -Andi