https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103875
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- The clobber is gone at the point we inline pop(), CDDCE1 removes it because the clobbered address computation is dead. Eliminating unnecessary statements: Deleting : *_4 ={v} {CLOBBER}; Deleting : _4 = &this_6(D)->data[_2]; IL before CDDCE: <bb 2> : _1 = this_6(D)->size; _2 = _1 + 18446744073709551615; this_6(D)->size = _2; _4 = &this_6(D)->data[_2]; *_4 ={v} {CLOBBER}; return;