https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123801
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Before IPA we try to preserve the exact access path for __builtin_object_size reasons (except for bugs) but after IPA it is really solely about equivalent addresses. There were talks in other PRs about VN changing the access path on ADDR_EXPRs to something that could to some extent work in both, whether it is just MEM_REF of the base with offset or e.g. in this case to the anon union as something common between those, but nothing has been implemented and the question is how hard would it be to do so.
