[vector] Destruct in pop()

This commit is contained in:
Behdad Esfahbod 2022-01-15 18:00:18 -07:00
parent 7171917b52
commit 5946e945d5
1 changed files with 4 additions and 2 deletions

View File

@ -325,8 +325,10 @@ struct hb_vector_t
Type pop ()
{
if (!length) return Null (Type);
return std::move (arrayZ[--length]); /* Does this move actually work? */
// XXX Destruct?
Type v = std::move (arrayZ[length - 1]);
arrayZ[length - 1].~Type ();
length--;
return v;
}
void remove (unsigned int i)