https://gcc.gnu.org/g:e6d2bcf74235ec8760136b2d7364ec472954b65b
commit r14-11192-ge6d2bcf74235ec8760136b2d7364ec472954b65b Author: Jonathan Wakely <jwak...@redhat.com> Date: Fri Aug 23 21:54:21 2024 +0100 libstdc++: Improve Doxygen docs for std::allocator_traits specializations The main fix here is to use @header so that the docs show the correct header file instead of an internal header like alloc_traits.h. libstdc++-v3/ChangeLog: * include/bits/alloc_traits.h: Improve doxygen docs for allocator_traits specializations. * include/bits/memory_resource.h: Likewise. (cherry picked from commit cd8e0ea7273425931a0843f4355ad61e177e1bf2) Diff: --- libstdc++-v3/include/bits/alloc_traits.h | 16 ++++++++++++++-- libstdc++-v3/include/bits/memory_resource.h | 9 +++++++-- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/libstdc++-v3/include/bits/alloc_traits.h b/libstdc++-v3/include/bits/alloc_traits.h index a81b286eee70..9d55a1912885 100644 --- a/libstdc++-v3/include/bits/alloc_traits.h +++ b/libstdc++-v3/include/bits/alloc_traits.h @@ -450,7 +450,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #pragma GCC diagnostic pop #if _GLIBCXX_HOSTED - /// Partial specialization for std::allocator. + /** + * @brief Partial specialization for `std::allocator` + * @headerfile memory + * @ingroup allocators + * @since C++11 + * @see std::allocator_traits + */ template<typename _Tp> struct allocator_traits<allocator<_Tp>> { @@ -621,7 +627,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return __rhs; } }; - /// Explicit specialization for std::allocator<void>. + /** + * @brief Explicit specialization for `std::allocator<void>` + * @headerfile memory + * @ingroup allocators + * @since C++11 + * @see std::allocator_traits + */ template<> struct allocator_traits<allocator<void>> { diff --git a/libstdc++-v3/include/bits/memory_resource.h b/libstdc++-v3/include/bits/memory_resource.h index 5f50b296df7b..db515fb30ef9 100644 --- a/libstdc++-v3/include/bits/memory_resource.h +++ b/libstdc++-v3/include/bits/memory_resource.h @@ -52,7 +52,7 @@ namespace std _GLIBCXX_VISIBILITY(default) _GLIBCXX_BEGIN_NAMESPACE_VERSION namespace pmr { - /// Class memory_resource + /// Class `memory_resource` /** * @ingroup pmr * @headerfile memory_resource @@ -385,7 +385,12 @@ namespace pmr template<typename _Alloc> struct allocator_traits; - /// Partial specialization for std::pmr::polymorphic_allocator + /// Partial specialization for `std::pmr::polymorphic_allocator` + /** + * @ingroup pmr + * @headerfile memory_resource + * @since C++17 + */ template<typename _Tp> struct allocator_traits<pmr::polymorphic_allocator<_Tp>> {