Index: boost/intrusive/hashtable.hpp =================================================================== --- boost/intrusive/hashtable.hpp.orig 2009-10-15 20:46:26.000000000 +0200 +++ boost/intrusive/hashtable.hpp 2010-04-08 13:51:49.307002153 +0200 @@ -570,6 +570,7 @@ template #else template #endif + class hashtable_impl : private detail::clear_on_destructor_base > { @@ -2879,15 +2880,16 @@ template < class T #else template #endif + struct make_hashtable_opt { typedef typename pack_options < uset_defaults, - #if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) +#if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) O1, O2, O3, O4, O5, O6, O7, O8, O9, O10 - #else +#else Options... - #endif +#endif >::type packed_options; //Real value traits must be calculated from options @@ -2947,17 +2949,18 @@ template #endif + struct make_hashtable { /// @cond typedef hashtable_impl < typename make_hashtable_opt ::type > implementation_defined; @@ -2972,21 +2975,22 @@ template #else template #endif + class hashtable : public make_hashtable::type { typedef typename make_hashtable::type Base; public: @@ -3011,7 +3015,7 @@ class hashtable {} }; -#endif +#endif // BOOST_INTRUSIVE_DOXYGEN_INVOKED } //namespace intrusive } //namespace boost Index: boost/intrusive/rbtree.hpp =================================================================== --- boost/intrusive/rbtree.hpp.orig 2009-10-15 20:46:26.000000000 +0200 +++ boost/intrusive/rbtree.hpp 2010-04-08 13:55:55.579002923 +0200 @@ -865,11 +865,11 @@ class rbtree_impl return ret; } - #if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED) +#if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED) template iterator erase_and_dispose(iterator i, Disposer disposer) { return this->erase_and_dispose(const_iterator(i), disposer); } - #endif +#endif //! Requires: Disposer::operator()(pointer) shouldn't throw. //! @@ -1530,11 +1530,11 @@ struct make_rbtree_opt { typedef typename pack_options < set_defaults, - #if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) +#if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) O1, O2, O3, O4 - #else +#else Options... - #endif +#endif >::type packed_options; typedef typename detail::get_value_traits ::type value_traits; @@ -1561,11 +1561,11 @@ struct make_rbtree /// @cond typedef rbtree_impl < typename make_rbtree_opt::type > implementation_defined; /// @endcond @@ -1581,20 +1581,20 @@ template #endif class rbtree : public make_rbtree::type { typedef typename make_rbtree ::type Base; public: @@ -1632,7 +1632,7 @@ class rbtree { return static_cast(Base::container_from_iterator(it)); } }; -#endif +#endif //!BOOST_INTRUSIVE_VARIADIC_TEMPLATES } //namespace intrusive Index: boost/intrusive/sgtree.hpp =================================================================== --- boost/intrusive/sgtree.hpp.orig 2009-10-15 20:46:26.000000000 +0200 +++ boost/intrusive/sgtree.hpp 2010-04-08 13:58:34.839825416 +0200 @@ -1048,11 +1048,11 @@ class sgtree_impl return ret; } - #if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED) +#if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED) template iterator erase_and_dispose(iterator i, Disposer disposer) { return this->erase_and_dispose(const_iterator(i), disposer); } - #endif +#endif //! Requires: Disposer::operator()(pointer) shouldn't throw. //! @@ -1770,11 +1770,11 @@ struct make_sgtree_opt { typedef typename pack_options < sg_set_defaults, - #if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) +#if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) O1, O2, O3, O4 - #else +#else Options... - #endif +#endif >::type packed_options; typedef typename detail::get_value_traits ::type value_traits; @@ -1801,11 +1801,11 @@ struct make_sgtree /// @cond typedef sgtree_impl < typename make_sgtree_opt::type > implementation_defined; /// @endcond @@ -1820,20 +1820,20 @@ template #endif class sgtree : public make_sgtree::type { typedef typename make_sgtree ::type Base; public: @@ -1865,7 +1865,7 @@ class sgtree { return static_cast(Base::container_from_end_iterator(end_iterator)); } }; -#endif +#endif //!BOOST_INTRUSIVE_DOXYGEN_INVOKED } //namespace intrusive Index: boost/intrusive/treap.hpp =================================================================== --- boost/intrusive/treap.hpp.orig 2009-10-15 20:46:26.000000000 +0200 +++ boost/intrusive/treap.hpp 2010-04-08 14:00:00.043511275 +0200 @@ -976,11 +976,11 @@ class treap_impl return ret; } - #if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED) +#if !defined(BOOST_INTRUSIVE_DOXYGEN_INVOKED) template iterator erase_and_dispose(iterator i, Disposer disposer) { return this->erase_and_dispose(const_iterator(i), disposer); } - #endif +#endif //! Requires: Disposer::operator()(pointer) shouldn't throw. //! @@ -1629,11 +1629,11 @@ struct make_treap_opt { typedef typename pack_options < treap_set_defaults, - #if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) +#if !defined(BOOST_INTRUSIVE_VARIADIC_TEMPLATES) O1, O2, O3, O4 - #else +#else Options... - #endif +#endif >::type packed_options; typedef typename detail::get_value_traits ::type value_traits; @@ -1661,11 +1661,11 @@ struct make_trie /// @cond typedef treap_impl < typename make_treap_opt::type > implementation_defined; /// @endcond @@ -1681,20 +1681,20 @@ template #endif class treap : public make_trie::type { typedef typename make_trie ::type Base; public: @@ -1735,7 +1735,7 @@ class treap { return static_cast(Base::container_from_iterator(it)); } }; -#endif +#endif // !BOOST_INTRUSIVE_DOXYGEN_INVOKED } //namespace intrusive