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]