https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66021
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|critical |normal --- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Nuno Lopes from comment #3) > Created attachment 35467 [details] > reduced test case The reduced testcase is compiled correctly in that the deallocate is called unconditional with zero argument: bit_vector() : m_num_bits(0), m_capacity(0), m_data(0) { memory::deallocate(m_data); } m_data will be NULL always when deallocate is called.