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: alias.c:nonoverlapping_component_refs_p



On Monday, December 3, 2001, at 08:11 , Daniel Berlin wrote:
> On Mon, 3 Dec 2001, Richard Kenner wrote:
>> I don't believe it is safe to conclude that if two fields aren't 
>> the same,
>> they don't overlap.  An example of a case where they do is an Ada 
>> subtype
>> of a variant record.
>
> On a RECORD_TYPE, it should be safe.

Even for C I'm not sure this is always safe. For example, if we have a
struct in C with two tightly packed char's, then it may be the case
that writing to one field requires updating both (presumably using
masking to preserve the old value). How would one represent this kind
of aliasing?

   -Geert


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