Search code examples
c++boostshared-ptr

static_cast_tag() substitute in latest boost version


I see static_cast_tag() was supported and earlier version of boost C++ (1.47 and before) under boost/smart_ptr/shared_ptr.hpp but in latest boost versions this is missing from shared_ptr.hpp file (see). Under which file this functionality is been kept? Is this syntax used any longer or scrapped in new versions of boost?


Solution

  • static_cast_tag is an implementation detail of how Boost 1.47 implements static_pointer_cast (hence its location in a detail namespace).

    You should be using static_pointer_cast directly; this will work with all Boost versions.