void nodelete_remptr (const void *obj, const char *fl, int *fp) { if (do_nodelete ()) for (objref *oref = objreftab[obj]; oref; oref = objreftab.nextkeq (oref)) if (oref->refline == fl && oref->flagp == fp) { delete oref; return; } }
inline void nodelete_check (const void *ptr) { if (do_nodelete ()) for (objref *oref = objreftab[ptr]; oref; oref = objreftab.nextkeq (oref)) { if (oref->flagp) (*oref->flagp)++; else panic ("deleting ptr %p still referenced from %s\n", ptr, oref->refline); } }