aggregate aliasing losage
Toon Moene
toon@moene.indiv.nluug.nl
Fri Jun 2 07:36:00 GMT 2000
Richard Henderson wrote:
> On Thu, Jun 01, 2000 at 03:42:55PM -0400, Richard Kenner wrote:
> > I'm wondering if this means that in Fortran, the alias set of an array
> > has to be the same as the alias set of its component.
>
> The way I read c99's 6.5/7
>
> ] 7 An object shall have its stored value accessed only by an lvalue
> ] expression that has one of the following types:
> ] - a type compatible with the effective type of the object,
>
> the type of `b->d' is certainly compatible with the type of `a->d',
> which is the object being referenced.
Note - to return to the original question - that Fortran does not have
any type based alias restrictions. The rules in Fortran are very
simple:
Two items alias iff they are EQUIVALENCEd.
I.e., only the Frontend knows when two items overlap; it is the
responsibility of the Frontend to convey this information to the
"middle" end.
Cheers,
--
Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290
Saturnushof 14, 3738 XG Maartensdijk, The Netherlands
GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html
GNU Fortran 95: http://g95.sourceforge.net/ (under construction)
More information about the Gcc-patches
mailing list