[libc++] Implement P2186R2 (Remove Garbage Collection)

Reviewed By: Quuxplusone, #libc, ldionne

Differential Revision: https://reviews.llvm.org/D112869

NOKEYCHECK=True
GitOrigin-RevId: b57c22ade8673d68088f5638a1050e3f3c1f163d
diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst
index 5f81b3e..9ccb211 100644
--- a/docs/ReleaseNotes.rst
+++ b/docs/ReleaseNotes.rst
@@ -82,6 +82,11 @@
   ``std::chrono::file_clock::from_time_t``; neither libstdc++ nor MSVC STL
   had such methods.
 
+- The declarations of functions ``declare_reachable``, ``undeclare_reachable``, ``declare_no_pointers``,
+  ``undeclare_no_pointers``, and ``get_pointer_safety`` have been removed not only from C++2b but
+  from all modes. Their symbols are still provided by the dynamic library for the benefit of
+  existing compiled code. All of these functions have always behaved as no-ops.
+
 ABI Changes
 -----------