Clarification on Gcc's strict aliasing rules
Francis Moreau
francis.moro@gmail.com
Mon Nov 8 09:09:00 GMT 2010
"Segher Boessenkool" <segher@kernel.crashing.org> writes:
>>> I got no diagnostic when compiling it with "-Wall
>>> -O2" switches. Is it expected ?
>>
>> Yes. -O0 implies -fno-strict-aliasing.
>
> I misread, you asked for -O2.
>
> The compiler cannot always detect these situations -- if it could,
> it could simply always do what the user expects!
>
> You can try -Wstrict-aliasing=N for different N; levels 1 and 2
> probably work. The N is a tradeoff between false negatives and
> false positives; see the manual for what they do exactly.
Ok, using levels 1 or 2 gives the diagnostic.
--
Francis
More information about the Gcc-help
mailing list