https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98130

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.  The issue is that placement new is _not_ __attribute__((malloc)),
it makes PTA consider the object not escaping and then we have DSE do

;; Function append (_ZL6appendPi, funcdef_no=1, decl_uid=2355, cgraph_uid=2,
symbol_order=3)

  Deleted dead store: MEM[(int * *)_4] = value_5(D);

__attribute__((always_inline))
void append (int * value)
{
  void * _2;
  void * _4;

  <bb 2> :
  _2 = p;
  _4 = operator new (8, _2);
  return;

}

Reply via email to