ptr_map<U, T> lets me map simple types to pointers-to-T, preserving polymorphic behavior of the mapped-to objects, and clearly stating that the ptr_map solely owns the pointed-to objects.

I'd like to map pointers-to-U to pointers-to-T and have the map solely own the key objects as well as the mapped-to objects.  ptr_map doesn't do this.  I could map shared_ptrs-to-U to pointers-to-T, but then I lose the clear ownership semantics.

Does anyone know of an easy workaround to get the behavior and semantics that I want, or is this more properly a feature request?

Thanks!