https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106943
--- Comment #12 from Alexander Monakov <amonakov at gcc dot gnu.org> --- That would not fix the problem, lifetime-dse affects code that creates 'class User' objects, not the implementation of its 'operator new' override. (also the linked bug says "MDNode has the same pattern and the same issues") Is there any need to over-engineer this like that? I would hope enabling -fno-lifetime-dse globally would not be controversial for LLVM, especially given the existing bug report and long-term use of -fno-strict-aliasing.