https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109446
--- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Richard Biener from comment #8) > (In reply to Jakub Jelinek from comment #7) > > (In reply to Richard Biener from comment #6) > > > not sure if we should prevent all of those transforms. But the question > > > is > > > why ASAN doesn't instrument the generated aggregate copy? Maybe because > > > in C/C++ you cannot write an aggregate array copy? > > > > We do instrument those. But only instrument them by checking the first and > > last byte > > of the copy, not all bytes in between (because that would be for inline > > checking too large - we'd need to emit inline a loop over those bytes). > > OK, that's lack of an appropriate API then? But still the first and last > byte should be sufficient to detect the problem (but maybe I'm missing > something here). Maybe it just happens the end to be on the stack of the inner most function so it just happens that it is an variable address still.