Boost logo

Boost :

Subject: [boost] [smart_ptr] No more shared_ptr<T>::value_type?
From: Andrew Hundt (athundt_at_[hidden])
Date: 2013-04-16 12:21:06


I updated from boost 1.52 to 1.53 and it appears that the typedefs have
been removed, I couldn't find any mention of it in the release notes, and I
searched the list for shared_ptr value_type and saw no mention of the
change there. Was this a deliberate change?

This breaks a *lot* of code for me, and will make more difficult for me to
convince my team to continue to use boost or upgrade in the future because
they are very apprehensive of breaking changes. I understand if it has been
removed to be C++11 compliant but I expected some warning before breaking
changes like this. boost::thread and boost::filesystem are good examples of
changes that were made with solid advance notice. This caught me completely
by surprise, did I miss something obvious?

Could someone point me to the recommended alternative as well?

1.52 has typedef T value_type:
http://www.boost.org/doc/libs/1_52_0/boost/smart_ptr/shared_ptr.hpp

1.53 does not:
http://www.boost.org/doc/libs/1_53_0/boost/smart_ptr/shared_ptr.hpp

Thanks for your help!

Cheers!
Andrew Hundt


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk