This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Ada and TBAA and arrays vs. VIEW_CONVERT_EXPRs


> The problem is that in Gigi you are copying alias sets from a
> TYPE_NONALIASES_COMPOMENT type to a non-TYPE_NONALIASES_COMPOMENT type.

That indeed shouldn't happen because of the way Ada is defined (you
only copy alias sets among derived types and all derived types should
have the same Aliased status with respect to its component type) , but
there may well be a bug.

However, the "Gigi change" I was talking about in my email was that of
setting that flag for string literals.

> As non-TYPE_NONALIASES_COMPOMENT expect their element alias-set to be
> the same as the array alias-set 

That I still think is wrong.  I think it should be the same as for records:
the alias set of the aggregate type should be distinct from that of its
element and a subsetting should be set up (as we still do for records).
If Fortran (or any other language), has additional requirements, it can
manually set the alias set of the array as needed (as Ada does in
some cases).


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]