diff --git a/doc/intrusive.qbk b/doc/intrusive.qbk
index 83ffb5f..988313f 100644
--- a/doc/intrusive.qbk
+++ b/doc/intrusive.qbk
@@ -3763,7 +3763,9 @@ to be inserted in intrusive containers are allocated using `std::vector` or `std
[section:release_notes_boost_1_58_00 Boost 1.58 Release]
-* Reduced compile-time dependencies, headers, and the use of Boost.Preprocessor, specially for hooks and iterators.
+* Reduced compile-time dependencies, headers, and the use of Boost.Preprocessor, specially for hooks and iterators.
+* Fixed bugs:
+ * [@https://svn.boost.org/trac/boost/ticket/10853 Boost Trac #10853: ['problem with detection of const_cast_from]]
[endsect]
diff --git a/include/boost/intrusive/pointer_traits.hpp b/include/boost/intrusive/pointer_traits.hpp
index 1d5b5e4..9be509b 100644
--- a/include/boost/intrusive/pointer_traits.hpp
+++ b/include/boost/intrusive/pointer_traits.hpp
@@ -57,6 +57,14 @@ BOOST_INTRUSIVE_INSTANTIATE_DEFAULT_TYPE_TMPLT(value_traits_ptr)
//! extensions like castings.
//!
//! pointer_traits supplies a uniform interface to certain attributes of pointer-like types.
+//!
+//! Note: When defining a custom family of pointers or references to be used with BI
+//! library, make sure the public static conversion functions accessed through
+//! the `pointer_traits` interface (`*_cast_from` and `pointer_to`) can
+//! properly convert between const and nonconst referred member types
+//! without the use of implicit constructor calls. It is suggested these
+//! conversions be implemented as function templates, where the template
+//! argument is the type of the object being converted from.
template
struct pointer_traits
{