------- Comment #1 from rguenth at gcc dot gnu dot org 2006-04-17 19:55 ------- Just to add some information from the conversation on this topic:
> > Shouldn't the aliasing set for the type atype be the same as atype1? > > Im not entirely sure, but the C99 standard does at least not suggest > otherwise, instead it says (6.7.7/3) "A typedef declaration does not introduce > a new type, only a synonym for the type so specified." atype and atype1 are compatible bacsue of 6.7.5.2, Array declarators: 6 For two array types to be compatible, both shall have compatible element types, and if both size specifiers are present, and are integer constant expressions, then both size specifiers shall have the same constant value. If the two array types are used in a context which requires them to be compatible, it is undefined behavior if the two size specifiers evaluate to unequal values. I assume that compatible types should be in the same alias set. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27184