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

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
In the case of the constant proping into `&f.bar[argc][0]`, it is not know if
you are doing an offset of the original struct or an offset into the array.
GCC's internal IR changes into the former as it is more canonical form while
with the constant already there is known at front-end time.

With respect of a non-constant one, GCC's IR keeps the array form address
around which allows the answer of still 40.

I can't explain clang/LLVM's behavior for `,3` though.

Reply via email to