On Wed, 14 Nov 2007, Paul Cochrane wrote: > The float_equals warnings in gcc *are* off. So why is this warning a > problem (maybe I've missed something)?
They used to be on. I don't know when they were turned off. The workaround in <parrot/misc.h> was put in place to try to silence the warnings. When the warning was removed, the workaround was not. > I also don't see over 1000 > warnings with gcc (I've got gcc 3.4.5 on Gentoo Linux x86); I have in > the order of 100 atm. If we *are* seeing over 1000 warnings with gcc, > then either we should turn the warnings level down a bit, or the > warnings should be fixed (like some warnings about required non-null > arguments I know). Here are the warnings I got on my latest run, along with the number of times each one appeared: (this was with gcc-4.1.0 on Solaris/SPARC) 689 visibility attribute not supported in this configuration; ignored 130 cast increases required alignment of target type 66 switch missing default case 65 dereferencing type-punned pointer will break strict-aliasing rules 56 null argument where non-null required (argument 2) 5 dereferencing type-punned pointer might break strict-aliasing rules 3 return makes pointer from integer without a cast 2 variable 'buffer' might be clobbered by 'longjmp' or 'vfork' 2 request for implicit conversion from 'void *' to 'caddr_t' not permitted in C++ 2 cast discards qualifiers from pointer target type 2 'type' may be used uninitialized in this function 1 value computed is not used 1 unused parameter 'obj_file' 1 request for implicit conversion from 'void *' to 'char *' not permitted in C++ 1 null argument where non-null required (argument 1) 1 nested extern declaration of 'localtime_r' 1 nested extern declaration of 'gmtime_r' 1 nested extern declaration of 'asctime_r' 1 implicit declaration of function 'localtime_r' 1 implicit declaration of function 'gmtime_r' 1 implicit declaration of function 'asctime_r' 1 comparison between signed and unsigned 1 comparison between pointer and integer 1 cast from function call of type 'INTVAL' to non-matching type 'void *' 1 assignment from incompatible pointer type 1 array subscript has type 'char' 1 'type_name' is used uninitialized in this function 1 'old_value' may be used uninitialized in this function 1 'old_blocks' declared 'static' but never defined 1 'is_ins_save' defined but not used 1 'curlog' may be used uninitialized in this function 1 "__STDC_VERSION__" is not defined -- Andy Dougherty [EMAIL PROTECTED]