Strict-aliasing in GCC

Jan Engelhardt jengelh@medozas.de
Sat Jun 12 18:22:00 GMT 2010


On Saturday 2010-06-12 03:44, Ian Lance Taylor wrote:
>
>> Since in this particular case, member is the first field,
>> one could also write
>>
>> 	for (pos = (struct item *)clh.next; ...)
>>
>> I hear that
>>
>> 	"C specifies that a struct * can be converted to and from a
>> 	pointer to its first element."
>>
>> Does that change anything?
>
>Yes, it should generally be OK to cast between a pointer to a struct
>type and a pointer to the type of the first element of the struct.

So could it be that the aliasing optimizations are overzealous here?



More information about the Gcc-help mailing list