#97 Fix some Boost.TypeTraits-related issues.


In few different situations, STLport's attempt to use the Boost.TypeTraits library resulted in circular dependencies or other errors.

A few fixes were required to resolve this:
1) In stlport/stl/_prolog.h, hide _debug.h when cstddef is the outermost header, since some of the Boost.TypeTraits headers include this to get std::size_t.
2) In stlport/stl/type_traits.h, the inclusion of boost/type_traits/remove_const.hpp was missing.
3) In stlport/stl/boost_type_traits.h, if BOOST_NO_STDC_NAMESPACE is defined, we need to pull size_t and ptrdiff_t into namespace std. This is because std may have been redefined to another name when boost/config/suffix.hpp was included, but this redef will not be present where boost_type_traits.h is included and thus the Boost.TypeTraits files may not be able to find size_t and ptrdiff_t in std unless the fix is present.
4) In stlport/functional and stlport/memory, we add the use of the BOOST_TR1_NO_RECURSION define to detect cases where the related Boost components have caused this header to be included.


  • David Deakins

    David Deakins - 2009-08-17
    • assigned_to: nobody --> complement
  • David Deakins

    David Deakins - 2009-09-09

    Just checking to see if you had any thoughts on these Boost.TypeTraits-related fixes?


Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks