https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92703
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> --- (In reply to Tobias Burnus from comment #0) > With CLASS, I am not quite sure what goes wrong. I initially thought it is > just a missing copy – as the dump shows: > > class.20._data = &var; > classy (&class.20); > > But if I print x%A(:), it looks complete random and uninitialized. With -O0, one indeed runs into 'stop 2' - i.e. '&var' is not copied. However, with -O1 it fails with the uninit memory. I assume that the alias analysis gets in trouble, cf. PR 92123. I think alias analysis will turn out to be a non-issue once VALUE is proper handled, but I wonder whether some corner case can still cause problems.