Philippe A. Bouchard wrote: [...]
> Let's say the placement operator new is using malloc(), then we could > do > some reverse lookup into mallinfo to find the heap block in which some > address is related to. This information could then be cached into > the smart pointer itself making sizeof(smart_pointer) == (sizeof(void > *) * 2) [if shifted_ptr<> style is to be used]: Well, let's say the placement operator new pushes back some information about the block address and it's size into some list< pair<void *, size_t> >. Forget the C's mallinfo oddity. This way (or any other derivative), there is no possible leak and no need to scan the entire graph. A benchmark could help maybe. [It's too bad I do not have time to study the situation more in depth -- really sorry]. Regards, Philippe _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost