Updated documentation about shared_ptrs
diff --git a/src/main/include/log4cxx/helpers/object.h b/src/main/include/log4cxx/helpers/object.h
index b945bbf..18b6728 100644
--- a/src/main/include/log4cxx/helpers/object.h
+++ b/src/main/include/log4cxx/helpers/object.h
@@ -109,6 +109,12 @@
 LOG4CXX_PTR_DEF(Object);
 }
 
+/**
+ * Attempt to cast one Object to another kind of Object.
+ *
+ * On success, returns a new shared pointer that points at incoming.
+ * On failure, returns an invalid shared pointer.
+ */
 template<typename Ret,
 	typename Type,
 	bool = std::is_base_of<Ret, helpers::Object>::value,
diff --git a/src/site/doxy/Doxyfile.in b/src/site/doxy/Doxyfile.in
index fa53335..d0e3933 100644
--- a/src/site/doxy/Doxyfile.in
+++ b/src/site/doxy/Doxyfile.in
@@ -450,7 +450,7 @@
 # normally produced when WARNINGS is set to YES.
 # The default value is: NO.
 
-EXTRACT_ALL            = NO
+EXTRACT_ALL            = YES
 
 # If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
 # be included in the documentation.
diff --git a/src/site/markdown/change-report-gh.md b/src/site/markdown/change-report-gh.md
index 9f032af..29a7bc2 100644
--- a/src/site/markdown/change-report-gh.md
+++ b/src/site/markdown/change-report-gh.md
@@ -48,6 +48,27 @@
 
 Alternative build systems have been removed, and we now support CMake only for building the library.
 
+With the introduction of smart pointers, the old behavior of implicit casting no longer works.  In
+order to cast between classes, use the new [log4cxx::cast](@ref log4cxx.cast) method.  This method returns an invalid
+`shared_ptr` on failure, or a `shared_ptr` pointing at the same object on success.  This should be
+transparent to user code, unless you are interacting with log4cxx internals directly.
+
+Before:
+
+```{.cpp}
+ObjectPtr instance = Loader::loadClass(className).newInstance();
+AppenderPtr appender = instance;
+```
+
+After:
+
+```{.cpp}
+ObjectPtr instance = ObjectPtr(Loader::loadClass(className).newInstance());
+AppenderPtr appender = log4cxx::cast<Appender>(instance);
+// At this point(assuming the cast was good), instance and appender
+// both point at the same object.
+```
+
 Bug
 ---
 
@@ -74,6 +95,11 @@
 -   \[[LOGCXX-515](https://issues.apache.org/jira/browse/LOGCXX-515)\] -
     Add macros to utilize libfmt formatting for messages
 
+Improvement
+-----------
+
+-   \[[LOGCXX-523](https://issues.apache.org/jira/browse/LOGCXX-523)\] -
+    Add in error handling for rollover errors
 
 <a name="0.11.0"/>
 ### Release 0.11.0 - 2020-08-09