https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94655

--- Comment #5 from Martin Sebor <msebor at gcc dot gnu.org> ---
We want stores by user code to be diagnosed based on strict language rules
(e.g., accessing a member via a reference to another member).  To do that we
either have to teach the middle end to avoid taking shortcuts that make the IL
look like invalid user code, or be able to apply more permissive rules for
stores synthesized by it.

I assume the former is what you meant by "modify the &something.field into
&MEM_REF[..., off]."  My comment was in support of that because, provided the
latter part actually meant "&MEM_REF[something, offsetoff (typeof (something),
field)], it could be added to and subtracted from to obtain pointers to any
other member of "something."  (In contrast, &something.field + N is only valid
for N <= sizeof something.field (flexible arrays aside)).

Reply via email to