Strict-aliasing in GCC

Ian Lance Taylor
Sun Jun 13 05:12:00 GMT 2010

Jan Engelhardt <> writes:

> 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 *); ...)
>>> 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?

I don't know, because that wasn't what you were doing.


More information about the Gcc-help mailing list