Rationale here was: if we were keeping this into scoped_ptrs before, then they should be on scoped maps now, since I can't have a std::map of scoped_ptrs. I don't get how that is different from the previous approach, sorry :(