https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98748
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Version|unknown |11.0 Severity|normal |enhancement Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Last reconfirmed| |2021-01-19 --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- PTA maintains a 'shadow layout' of variables it represents. Whenever that does not match the actual access layout inefficiencies arise so the current non-handling of certain cases is just conservative. A possible 'shadow layout' would be void *[] which should catch any layout with aligned pointers with the overhead of tracking non-pointers in extra precision. Note any field is really a separate variable as far as the solver and its memory and compile time use is concerned.