https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69919
--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> --- Created attachment 37782 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37782&action=edit Suggested patch Well, the situation is not so easy. Ideally, I would set m_reverse_map = NULL in mem_alloc_description<T>::~mem_alloc_description () and guard release_object_overhead and release_instance_overhead with probes if m_* != NULL. But as the assignment in the dtor is optimized out by DSE, because it's undefined to check member of a destroyed instance. Thus I suggest a small work-around that can survive lto.exp and LTO bootstrap goes to stage3 (still running). What do you think about it?