void annotate_new () { // buffer points to the new memory buffer // capacity and size have value of the size of new buffer annotate_contiguous_container ( buffer , buffer + capacity , buffer + capacity , buffer + size ); } // Annotates (unpoisons) buffer before deallocation void annotate_delete () { // should be called before deallocation annotate_contiguous_container ( buffer , buffer + capacity , buffer + size , buffer + capacity ); } Figure 8: Functions for updating container annotations after a new buffer allocation and just before buffer deallocation // Unpoisones memory for a new element, *before* adding it void annotate_increase () { annotate_contiguous_container ( buffer , buffer + capacity , buffer + size , buffer + size + 1 ); } // Poison memory *after* removing an element void…