sanchan wrote:
> missing -fno-strict-aliasing wherever there are bad programming
> practices and so on;

IIUC, GCC's current -Wstrict-aliasing implementation has a number of
flaws.  According to a recent thread[i] on the GCC ml..

> The current implementation of -Wstrict-aliasing looks at a single expression
> at once.  Although it does OK given the limited scope, it has several 
> drawbacks.
> First, it produces false positives, i.e., it warns when it should not.
> For instance, it warns about pointer conversions even when the pointers
> are never dereferenced.
> Second, it has many false negatives, i.e., it does not warn when it should.
> It does not warn when an address is not taken, for instance:
> float *f = ...
> int *i = (int*)f;
> Third, it does not display the name or type of the aliased objects, which
> makes the warnings hard to understand in templates or macros.

Until that improves it might be a good idea to take strict aliasing
warnings with a grain of salt.


[i] http://permalink.gmane.org/gmane.comp.gcc.patches/131449

-- 
                                        by design, by neglect
dirtyepic gentoo org            for a fact or just for effect
9B81 6C9F E791 83BB 3AB3 5B2D E625 A073 8379 37E8 (0x837937E8)

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to