alias question

xorbe xorbe@yahoo.com
Fri Feb 18 10:32:00 GMT 2011


> > If I have a char array, and it's
> always written by the char array, can it
> > be always reliably read by any combination of
> short/int/long pointers?
> >
> > As I understand, the compiler will see byte writes for
> all types, so
> > readind shoulg be fine without violating any strict
> alias rules.  Just
> > can't write the array by any other type than char[]
> access.  Right?  -Jason
> 
> No.  You can access anything only as its declared type
> or character type;
> an array of char thus can be accessed as char only.
> 
> Segher

However, what I said is walking the fine line of following
that rule.  I have several overlapping read-only types, BUT
they are only written as char.  Hence, they'll always resolve
to the correct value.  I haven't been able to construct any
code which fails to work yet.  If a char write precedes a
type's access to the same location, then it will be seen.
As far as I can tell, that basic rule is followed here!
Jason







More information about the Gcc-help mailing list