cpp/memory/scoped allocator adaptor/destroy

Uses the outer allocator to call the destructor of the object pointed to by, by calling

where OUTERMOST is the type that would be returned by calling, and then calling the member function recursively on the result of this call until reaching the type that has no such member function.

Return value
(none)