Merged revision(s) 57197, 57206, 57423, 57518 from trunk:
Renamed enable_shared_from_this2 to enable_shared_from_raw and
added shared_from_raw free function. These changes fix the pointer
value in shared_ptr which were obtained before an external shared_ptr has
taken ownership of the object (for example when a shared_ptr to
this is obtained in an object's constructor).
........
Brought back code which fixes get_deleter when it is called on a deleter
which has been wrapped inside a deleter_wrapper by "shared_from_raw() in
constructors" support.
........
Added weak_from_raw(), for use in conjunction with
enable_shared_from_raw base class.
........
Fixed access to enable_shared_from_raw::weak_this_ when
BOOST_NO_MEMBER_TEMPLATE_FRIENDS is defined.
........