[Bug c/27184] [4.0/4.1/4.2 Regression] Wrong code with pointers to arrays and types and strict aliasing
rguenth at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Mon Apr 17 19:55:00 GMT 2006
------- 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
More information about the Gcc-bugs
mailing list